XCode 5 сбой при проверке AppStore

Я новичок в iOS Development и очень хорошо пропустил что-то актуальное.

У меня есть приложение, разработанное в Xcode и протестированное с помощью устройств разработки, чтобы я знал, что он работает правильно.

Я создал запись в iTunes Connect и прошел шаги, чтобы включить статус "Ожидание загрузки"

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

Когда я перехожу в Organizer → Архив для загрузки приложения, все работает, я пробовал как проверку, так и распространение, но каждый раз получаю одну и ту же ошибку XCode.

Здесь начало сообщения об ошибке, которое я получаю от XCode, сообщите мне, если нужна дополнительная информация.

Process:         Xcode [1920]
Path:            /Applications/Xcode.app/Contents/MacOS/Xcode
Identifier:      com.apple.dt.Xcode
Version:         5.0 (3332.25)
Build Info:      IDEApplication-3332025000000000~2
App Item ID:     497799835
App External ID: 38302662
Code Type:       X86-64 (Native)
Parent Process:  launchd [129]
User ID:         501

Date/Time:       2013-09-20 11:37:11.767 +0200
OS Version:      Mac OS X 10.8.5 (12F37)
Report Version:  10

Interval Since Last Report:          8761 sec
Crashes Since Last Report:           8
Per-App Interval Since Last Report:  5941 sec
Per-App Crashes Since Last Report:   8
Anonymous UUID:                      B3570A30-11F9-5E70-9890-7B380C40FAE3

Crashed Thread:  0  Dispatch queue: com.apple.main-thread

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: EXC_I386_GPFLT

Application Specific Information:
objc_msgSend() selector name: respondsToSelector:
ProductBuildVersion: 5A1413

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libobjc.A.dylib                 0x00007fff91d39510 objc_msgSend_vtable5 + 16
1   com.apple.AppKit                0x00007fff8c52c3b2 +[NSTextInputContext currentInputContext] + 128
2   com.apple.AppKit                0x00007fff8c52bb81 -[NSApplication updateWindows] + 94
3   com.apple.AppKit                0x00007fff8c776d9f __38-[NSApplication setWindowsNeedUpdate:]_block_invoke_02349 + 76
4   com.apple.CoreFoundation        0x00007fff92a2f417 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23
5   com.apple.CoreFoundation        0x00007fff92a2f381 __CFRunLoopDoObservers + 369
6   com.apple.CoreFoundation        0x00007fff92a0a7b8 __CFRunLoopRun + 728
7   com.apple.CoreFoundation        0x00007fff92a0a0e2 CFRunLoopRunSpecific + 290
8   com.apple.HIToolbox             0x00007fff9120ceb4 RunCurrentEventLoopInMode + 209
9   com.apple.HIToolbox             0x00007fff9120cb94 ReceiveNextEventCommon + 166
10  com.apple.HIToolbox             0x00007fff9120cae3 BlockUntilNextEventMatchingListInMode + 62
11  com.apple.AppKit                0x00007fff8c52a533 _DPSNextEvent + 685
12  com.apple.AppKit                0x00007fff8c529df2 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 128
13  com.apple.AppKit                0x00007fff8c5211a3 -[NSApplication run] + 517
14  com.apple.AppKit                0x00007fff8c4c5bd6 NSApplicationMain + 869
15  libdyld.dylib                   0x00007fff8edcb7e1 start + 1

Ответ 1

Я тоже получил эту ошибку и потерпел крах в XCode 5 при отправке моего архива из организатора, в то время как в Xcode 4.6 у меня не было проблем всего за несколько недель до этого. Похоже, что реальная проблема заключается в том, что XCode не может найти соответствующий идентификатор подписи; как-то ранее созданный профиль обеспечения несовместим или не распознается.

Как упоминалось Manthan, создание нового профиля обеспечения разрешает эту проблему. Вот шаги для этого:

  • Войдите в https://developer.apple.com/membercenter/index.action
  • В сертификатах, идентификаторах и профилях выберите Профили Provisioning.
  • Дополнительно: выберите старый профиль и нажмите кнопку удаления.
  • Нажмите кнопку Добавить (+) в верхнем правом углу.
  • Выберите Магазин приложений в качестве метода распространения; нажмите "Продолжить".
  • Выберите свой идентификатор приложения; Продолжить
  • Выберите свой сертификат. ПРИМЕЧАНИЕ. Убедитесь, что вы выбрали сертификат, для которого у вас есть закрытый ключ (см. Приложения/Утилиты/KeyChain Access, keychain: login, category: мои сертификаты. Ваш сертификат должен быть указан здесь с закрытым ключом в дополнительном списке, иначе вы необходимо будет получить новый сертификат.)
  • Введите имя и сделанный.
  • В настройках XCode (Cmd +) выберите вкладку Аккаунты, а затем нажмите Подробнее...
  • Нажмите кнопку обновить в левом нижнем углу.

Теперь должен появиться новый профиль (и старый будет исчезать, если вы удалили его на шаге 3).

Наконец, установите параметры сборки и выполните другой архив.

  1. В XCode Project Navigator выберите цель проекта, а затем Настройки сборки
  2. Введите "знак кода" в поисковый фильтр
  3. Задайте профиль Provisioning Profile для Release для нового профиля (как загружено на шаге 10).
  4. Задайте Идентификация подписи кода для Отпустите к сертификату с шага 7 (или автоматически должно быть в порядке)
  5. Меню продукта- > Архив

На этом этапе я смог проверить и отправить в магазин приложений. Надеюсь, это сработает и для вас.

Ответ 2

Попробуйте обновить профили Certs/Provisioning Profiles в новых учетных записях XCode 5

XCode > menu > Preferences > Accounts
Click on your Developer Account from list on the Left
View Details button on right
Pop down screen appears
Hit tiny refresh button on bottom left.


If it says NO SIGNING CERT FOUND then 

1. if this is your first deploy to App Store then you need a cert.
2. If youve done it before did you choose the right account from the list.
Should have ADMIN status

Верхняя таблица должна иметь VALID во втором столбце

В сортировке нижней таблицы по истечении срока действия.

Прокрутка вверх и вниз по мере того, как сортировка не перемещается в верхнюю или нижнюю часть таблицы.

Убедитесь, что ваш сертификат распространения не истек.

Если вам нужно обновить его на developer.apple.com

Я считаю, что безопаснее делать все, что связано с сертификатом или профилем, через этот новый экран учетных записей. Если вы измените его на developer.apple.com. Не загружайте его. Просто зайдите в учетные записи XCode и нажмите "Обновить". такие вещи, как Organizer > Validate > Distribute, ведут себя тогда.

XCode account showing all certs as VALID and Expiration date in the future

enter image description here


Кто-то упоминает настройку профилей Prov в настройках сборки.

Не думайте, что это нужно больше после XCode 5.

Здесь снимок экрана моих настроек сборки.

Если вы добавили нужную учетную запись iTunes Developer в XCode > Учетные записи.

Когда вы Архивируете > Подтвердите его там, чтобы получить список PPP Distribution, чтобы подписать вам приложение. Поэтому настройка их в настройках сборки не требуется.

enter image description here

enter image description here

Ответ 3

Вам нужно создать профиль New Provisioning для распространения, чтобы исправить его.

Надеюсь, он отлично работает для вас.

Ответ 4

Ответ, предложенный Manthan, помог мне проверить и отправить мое приложение в AppStore. Все казалось правильно настроенным в центре участников, но все же приложение не удалось с уведомлением "Нет идентификаторов, доступных для подписания", даже жестко у меня был закрытый ключ для моего сертификата и профиль подготовки настроен правильно.

No identities are available for signing

Я закончил отмену моих сертификатов (дистрибутив и разработчик), очистив свои профили подготовки, и все же я получил ту же ошибку. Я только что создал точно такой же профиль распределения ресурсов, удалив старый из "Library/MobileDevice/Provisioning Profiles" вручную, чтобы быть уверенным, и я мог бы строить, проверять и отправлять просто отлично!!

Ответ 5

Как (надеюсь) полезный в стороне, я успешно использовал Application Loader непосредственно в некоторых ситуациях, когда XCode просто плохой день.