Не удается отправить приложение Mac через xcode4 - неверная подпись - PullRequest
6 голосов
/ 12 июня 2011

Я получаю эту ошибку:

Invalid Signature - эта ошибка возникает, если вы неправильно подписали установщик приложения. Для этого процесса требуются два сертификата: сертификат «Стороннее приложение разработчика Mac» и сертификат «Сторонний установщик разработчика Mac». При подписании вашего пакета вы должны убедиться, что вы используете сертификат Установщика для подписи вашего пакета. Убедитесь, что вы указываете этот сертификат при отправке приложения через Xcode Organizer или при запуске productbuild из командной строки.

Я гуглил и следовал инструкциям, но безрезультатно.

У меня есть:

Проекты> цели> сборка> подписывание кода> Стороннее приложение для разработчиков Mac:

Затем, когда я иду в архив, и он открывает Организатор, я иду, чтобы отправить, я выбираю «Сторонний установщик Mac». Но все равно не получается: (

Мне нужно сделать что-нибудь еще? Как чистить, а потом строить сначала? (Сборка для чего? Или просто выбрать сборку? - Хотя я сначала попробовал почти все из них, а затем архив).

Если это актуально, я использую MacRuby, и мне пришлось сначала сделать это, чтобы настроить его для развертывания xcode: http://redwoodapp.posterous.com/macruby-and-xcode-4-build-a-self-contained-ma

Любая помощь приветствуется - я рву свои волосы здесь: (

Ответы [ 3 ]

7 голосов
/ 12 июня 2011

У меня была такая же проблема в последнее время. И это отличный шанс записать и поделиться своими заметками. :)

Я предполагаю, что вы используете Xcode и Organizer (не загрузчик приложений)

Шаг 1: Проверьте связку ключей Access.app.

У вас должно быть два сертификата (которые вы загружаете из Mac Dev Center). Каждый из них должен быть связан с закрытым ключом. На картинке у меня есть только один сертификат "nacho4 ...", связанный с закрытым ключом "nac ...". Поэтому я должен пойти в центр разработки Mac и скачать свои сертификаты, чтобы продолжить. Скачайте их и перетащите их в «логин».

I only have one certificate

Шаг 2. Убедитесь, что вы можете создать приложение с правильной конфигурацией.

В моем случае я настроил три конфигурации. Отладка: можно отладить + без подписи (для разработки) Релиз: невозможно отладка + отсутствие подписи (в основном для внутренних бета-версий и т. Д.) Распространение: не удается отладить + подписать (для распространения в магазине приложений)

Перейти к проекту "Информация о сборке"> "Подписание сборки"> Убедитесь, что вы подписываете свой код с правильной идентификационной информацией. Что-то вроде: «Стороннее приложение для разработчиков Mac. My Company Inc.» * Если вы не видите этого, значит, что-то не так с вашими сертификатами в Keychain Access.app. Проверьте, что ваш сертификат связан с закрытым ключом enter image description here

Шаг 3 Убедитесь, что вы строите правильную конфигурацию.

(Да, это очевидно, но это случилось со мной в прошлый раз. По этой причине вы можете получить «Неверную подпись»). На панели «Редактировать схему» убедитесь, что в «Архиве» выбрана правильная конфигурация. " раздел. В моем случае это «Распространение» (по умолчанию «Выпуск»)

enter image description here

Обратите внимание, что если вы не сделаете это правильно, вы сможете отправить свой двоичный файл в Apple, но через несколько минут вы получите "Недопустимую подпись". Потому что сертификаты в порядке, но приложение не подписано.

Шаг 4. Создайте приложение и отправьте его

Xcode> Продукт> Архив enter image description here

Появится органайзер. Теперь просто отправьте это.

Я обнаружил, что проверка архива бесполезна, потому что иногда даже проверка не проходит, я могу отправить свое приложение без ошибок. Я читал это из других тем, так что не только я. Так что, если вы уверены, что это версия, которую вы хотите отправить в Apple. просто нажмите кнопку отправки.

Вам задают имя пользователя и пароль. Затем вы получаете другое меню для выбора приложения (у которого есть только одна опция, по крайней мере, в моем случае), а затем выбираете подпись, как мне кажется. Это важно! Убедитесь, что выбран «Сторонний установщик Mac», и все должно работать.

enter image description here

Если вы не видите опцию «Сторонний установщик разработчика Mac» в последнем меню, значит, что-то отсутствует в вашей цепочке для ключей. (Сертификат установщика из центра разработки Mac)

Обратите внимание, что если вы не сделаете это правильно, вы сможете отправить свой двоичный файл, но через несколько минут вы получите письмо «Недопустимая подпись» из iTunes Connect, потому что приложение, вероятно, может быть хорошо подписано, но сертификаты Apple будет неверны.

Надеюсь, это поможет.

5 голосов
/ 12 августа 2011

Два других ответа - хорошие контрольные списки, но у меня это не сработало.

Моя проблема заключалась в том, что я установил Xcode 3.2.6 на Lion (он все равно не работает, но это другоеистория).Это повредило приложение productutil.

Чтобы исправить это: установите BSD.pkg в папке Packages вашего установщика Lion.

Благодаря Джейкобу Горбану , чтобы поделиться своим решениемна форумах Apple Devs.

1 голос
/ 14 июня 2011

Думаю, это наконец-то отсортировано - спасибо Дэниелу из списка рассылки MacRuby. Я фактически закончил тем, что создал билет с Apple, но, надеюсь, они не будут взимать плату за это теперь, это было исправлено без них.

Вы можете посмотреть решение здесь: http://astonj.com/uncategorized/invalid-signature-error-on-submitting-app-to-the-mac-app-store/

...