Шаг подписания кода, как известно, суетлив и содержит ошибки. Убедитесь, что вы в точности выполнили действия, необходимые для получения сертификата и профиля от Apple. Затем проверьте настройки сборки в разделе «Идентификация подписи кода».
Вам не нужно подключать устройство, хотя это удобно, чтобы проверить, все ли работает. Однако иногда я обнаружил, что мне нужно отредактировать файл проекта вручную - вам не нужно этого делать, особенно с 3.xSDK, так как он немного лучше справляется с подписью кода.
Возможные причины ошибки:
1) несоответствие имени в сертификате и имени, заданного в вашем проекте. Однако предполагается, что версия 3.0 автоматически соответствует «раздаче iPhone» и не требует особого внимания к точному совпадению.
2) Вы не добавили сертификат, полученный от Apple, в связку ключей
3) Файл вашего проекта запутался и имеет неправильные настройки профиля из-за ошибки в XCode. На самом деле не должно происходить, но я захожу в содержимое пакета проекта и иногда редактирую файл проекта в textedit - не для слабонервных, и вам следует сделать резервную копию, если вы попробуете это.
4) Убедитесь, что профиль, который вы получили от Apple, правильно установлен в xcode (посмотрите в окне органайзера).
5) Чтобы убедиться, что он работает нормально, можно попробовать установить его на устройство, хотя в этом нет особой необходимости. Использование загрузчика приложения, а не веб-сайта itunesconnect для загрузки файла распространения - еще одна хорошая проверка, он должен возражать, если файл не подписан должным образом. (Хотя я уже сказал, что у меня были проблемы с загрузчиком приложений, и иногда мне приходилось использовать загрузку веб-сайта).
Если коротко, то велика вероятность, что вы все сделали правильно и просто обнаружили ошибку в xcode. Даже когда кажется, что это сработало, часто этого не происходило. Все это в беспорядке. Просто попробуйте повторить шаги и изменить идентификатор подписи кода в xcode. Также удалите все старые профили, которые вы не используете, чтобы у xcode было меньше шансов выбрать неправильный.
person
frankodwyer
schedule
12.08.2009