наше приложение разбилось на iOS 9, которое загружается Xcode 10

Наше приложение разбилось на iOS 9, который загружается в App Store Xcode 10 GM Seed. Он отлично работает при использовании XCode 10 GM Debug или Archive To Ad_Hoc. Вот несколько стеков вызовов.

crash1

crash2

crash3

Является ли Xcode 10 GM что-либо с помощью image.assets или других?

яблочный ответ apple reply

Ответ 1

Редактировать 4: Из примечаний к выпуску бета-версии Xcode 10.2:

Решена проблема, которая влияла на совместимость приложений с iOS 9.0, 9.1 и 9.2 при распространении приложения для локального или корпоративного распространения. Каталоги ресурсов приложений, созданные с использованием Xcode 10 с целью развертывания iOS 9.0, 9.1 или 9.2, производили контент, несовместимый со средами исполнения этих версий iOS при распространении с использованием локального или корпоративного распространения. Перестройка приложения с Xcode 10.2 решает эту проблему. (46893768, 44535967)

Редактировать 3: Из исправленных примечаний к выпуску Xcode 10.1:

Каталог активов

Известные вопросы

Приложения, которые содержат каталоги ресурсов, созданные с использованием Xcode 10 или более поздней версии с целью развертывания, установленной на iOS 9.0, 9.1 или 9.2, создают контент, несовместимый со средами исполнения этих версий iOS. (44535967, 45723580, 45723189)

Вопрос остается. 🤦♂️

Редактировать 2: Очевидно, проблема все еще не полностью решена.

Редактировать: Xcode 10.1 сейчас нет.

Это было исправлено в Xcode 10.1 beta 2:

Решает проблему, которая влияла на совместимость приложений с iOS 9.0, 9.1 и 9.2. Приложения, содержащие каталоги ресурсов, созданные с Xcode 10, цель развертывания которых была установлена на iOS 9.0, 9.1 или 9.2, будут производить контент, несовместимый со средами выполнения этих версий iOS. Перестройка приложения с Xcode 10.1 решает эту проблему. (44535967)

https://developer.apple.com/documentation/xcode_release_notes/xcode_10_1_beta_2_release_notes?language=objc

Ответ 2

Я нашел решение для архива Xcode 10.1

Установите систему сборки как Legacy Build System вместо системы сборки по умолчанию

Файл → Настройки рабочего пространства → Система сборки: перейти на устаревшую систему сборки

Я тестирую его в своем приложении, и оно работает хорошо.

Надеюсь, Apple сможет исправить эту ошибку в ближайшее время.

enter image description here

Ответ 3

Вместо того, чтобы ждать, пока Apple исправит, отправьте с помощью Xcode 9 при использовании NSInvocation для нового API. Это связано с большим количеством кода, но ваши пользователи будут счастливы.

Ответ 5

Эта ошибка была устранена.

Каталог активов

Решенные проблемы

Решена проблема, которая влияла на совместимость приложений с iOS 9.0, 9.1 и 9.2 при распространении приложения в App Store. Каталоги ресурсов приложений, созданные с использованием Xcode 10 с целью развертывания iOS 9.0, 9.1 или 9.2, создают контент, несовместимый со средами исполнения этих версий iOS при распространении через App Store. Перестройте и повторно отправьте приложение, используя Xcode 10.1, чтобы решить проблему. (44535967, 45723580, 45723189) Замечания к выпуску Xcode 10.1