После 4 месяцев разработки моего первого приложения iOS, пришло время отправить его на App Store
. Я создал приложение в iTunes Connect
, заполнил все детали, установил правильный Bundle ID
как в Connect
, так и в Xcode
. Тем не менее, я боролся последние 3 дня, пытаясь решить эту странную проблему. Кажется, что xcode пытается загрузить рамки Cocoapods
, а не мое главное приложение.
После архивирования я пошел в Window > Organizer > Validate...
. Я вижу следующий экран:
Ошибка:
(Для гуглеров: не найдено подходящих записей приложений. Проверьте правильность идентификатора вашего пакета "org.cocoapods.Alamofire
".
Сообщение об ошибке указывает, что оно пытается сопоставить Bundle ID
в соответствии с именем фрейма, а не с моим собственным пакетом (например, com.organization.AppName
). Я не могу найти ответы нигде. Я попытался сделать следующее в моей Podfile
(которая имеет use_frameworks!), А также мои разные комбинации conf, но не имела успеха.
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['EXPANDED_CODE_SIGN_IDENTITY'] = ""
config.build_settings['CODE_SIGNING_REQUIRED'] = "NO"
config.build_settings['CODE_SIGNING_ALLOWED'] = "NO"
end
end
end
Вопросы:
- Я делаю правильные шаги?
- Почему
Xcode
пытается сопоставитьframework bundle id
вместо моего основного приложения? - Как я могу пройти эту проблему, чтобы наконец отправить свое приложение?
РЕДАКТИРОВАТЬ 1: Мне удалось преодолеть эту проблему, но это вызвало еще одну проблему позже, поэтому у меня все еще нет решения. В принципе, Alamofire Pod (из Cocoapods) имеет идентификатор пакета com.xxx.Alamofire
. Я изменил его на com.xxx.myAppName
. С этим я смог отправить его в App Store, однако я не могу установить приложение в своем iPhone из TestFlight из-за следующей ошибки:
4/22/16, 12:50:29 AM itunesstored[124]: [ApplicationWorkspace]: Failed to install application: com.xxx.myAppName; /var/mobile/Media/Downloads/5927832272594571027/-6969961974973998640; Error Domain=LaunchServicesError Code=0 "(null)" UserInfo={Error=DuplicateIdentifier, ErrorDescription=The parent bundle has the same identifier (com.xxx.myAppName) as sub-bundle at /private/var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.IVHCuO/extracted/Payload/MyApp.app/Frameworks/Alamofire.framework}