it-swarm.com.ru

Xcode 7 НЕ будет создавать действительный архив из того же проекта, который создает действительный архив в Xcode 6

При использовании Xcode 7b5 для создания моего приложения, содержащего расширение Today, я не могу создать действительный архив. Когда я делаю архив, сборка завершается успешно, а затем в Организаторе он отображается в разделе «Другие элементы», а не в «iOS Apps». 

Если я закрываю проект и открываю тот же проект в Xcode 6.3.2 при создании архива, он отображается в разделе «Приложения iOS». 

Я сравнил архивы, и единственное, что я заметил, это то, что мой виджет «Сегодня» находится за пределами каталога «Приложения». Структура выглядит следующим образом для Xcode 6.3.2 против Xcode 7b5:

Xcode 6.3.2
.__ |. -Archive
.__ |. --Продукция
.__ |. --- Приложения
.__ |. ---- MyMainApp.app 

Xcode 7 Beta 5
.__ |. -Archive
.__ |. --Продукция
.__ |. --- Приложения
.__ |. ---- MyMainApp.app
.__ |. --- MyTodayWidget.appex 

Я думаю, что проблема в том, что MyTodayWidget упакован вне директории приложений и вне .app. Я не уверен, почему Xcode 7 beta 5 упаковывает приложение иначе, чем Xcode 6.3.2, когда я не вносил никаких изменений. 

ОБНОВЛЕНИЕ 14.08.2015: Похоже, это проблема с CocoaPods и расширениями, такими как расширение WatchKit или Today. Это было сообщено как Неверный архив, созданный при использовании «Архива» в Xcode 7 beta 5 (с расширением watchkit) # 4021 другим разработчиком. Кажется, это является основной причиной этой проблемы. 

Среда:
- Xcode 7 Beta 5
- Сегодня продление
- Нормальное приложение
- CocoaPods 0.38.2 (Последняя выпущенная версия от 9/22)
- AFNetworking используется в расширении и приложении

14
Polar Bear

Я только сегодня подтвердил, что это проблема CocoaPods для меня, в частности 4021 . Я пытался, как и другие пользователи по этой проблеме, и удалил «ресурсы для копирования» из моей сегодняшней цели расширения. Как только это было удалено, я смог успешно упаковать архив в Xcode 7 Beta 5. 

Надеюсь, это все еще работает в следующей бета-версии и GM ...

ОБНОВЛЕНИЕ 9/22: Это ответ, если вы используете 0.38.2 CocoaPods, их последнюю версию выпуска от 22.09.2015. Я смог отправить свое приложение в магазин приложений, используя Xcode 7 GM, используя этот метод.

12
Polar Bear

Это проблема с CocoaPods v0.39.0.beta.4. 

Как описано в CocoaPods GitHub бета 3 CocoaPods позволяет создавать архивы, как и ожидалось. В бета-версии 4 есть ошибка, препятствующая этому.

Сначала удалите предыдущую версию CocoaPods

Sudo gem uninstall cocoapods

а затем сделать:

Sudo gem install cocoapods -v 0.39.0.beta.3 --verbose

затем

pod update

и вы сможете строить архивы снова, как и ожидалось.

16
ehrpaulhardt

Наконец это исправлено в последней стабильной версии 0.39.0:

Так что вместо удаления

Sudo gem uninstall cocoapods

и переустановка через

Sudo gem install cocoapods

Также простой 

Sudo gem update cocoapods

должен это исправить!

3
niggeulimann

У меня была такая же проблема при обновлении Xcode до версии 7.0 (7A220) . И они сказали, что эта проблема уже отслежена ( Issue # 4274 )

наконец, я исправил эту проблему, выполнив следующие действия: 1) очистите все «Путь к папке с частными заголовками» и «Путь к папке с общими заголовками» во всех целевых элементах Pod-> Build Setting-> Packaging 2) удалите " Скопируйте Pods Resources "в наши цели-> Этапы сборки.

1
archerLj

При использовании Xcode 7 with cocoapods v.0.38.2 . Попробуйте удалить copy pod resources из вашей сегодняшней цели расширения.

0
CoderPug

Это может быть вызвано использованием CocoaPods 0.38. [0-2] и Xcode 7.

Он работает с более старой версией CocoaPods:

$ gem install cocoapods -v "=0.37.2"
$ gem uninstall cocoapods # then select 0.38.[0-2]
$ pod update

(Кроме того, мне также пришлось очистить папку сборки и стереть папку Pods перед pod update и внести изменения в перехват установки AFNetworing в моем Podfile )

Дальнейшие причины обсуждаются в Невозможно создать архив приложения iOS в xcode .

0
Adrian Schönig

Работает нормально, если вы удалите Copy Pod Resources из вашего расширения. Хотя я понятия не имею, что это может вызвать, мое приложение сработало, заархивировало и отправилось на проверку.

0
Yaroslav