Ошибка ITMS-90206 Недопустимый пакет содержит запрещенный файл 'Frameworks'
У меня проблема с загрузкой моего приложения в Магазин через XCode, в частности это.
Я видел много постов об этой ошибке, но все говорят о Extension App
, что я не использую.
Я использую Custom framework
а также Cocoapods
,
Вы можете увидеть здесь мое дерево:
- XXX - это название моего проекта
- SharedXXX мой
custom framework
- Pods - это проект, созданный
cocoa pods
Вот мое какао podFile
:
use_frameworks!
link_with 'XXX', 'SharedXXX'
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.1'
workspace 'XXX'
xcodeproj 'XXX/XXX.xcodeproj'
xcodeproj 'Shared/SharedXXX.xcodeproj'
def default_pods
pod 'Reveal-iOS-SDK', :configurations => ['Debug']
pod "SnapKit", '~> 0.17.0'
pod "DKChainableAnimationKit", '~> 1.6.0'
pod "AsyncSwift"
end
def shared_pods
pod "Alamofire", '~> 3.0'
pod 'SwiftyJSON', :git => 'https://github.com/SwiftyJSON/SwiftyJSON.git'
pod 'ReachabilitySwift', :git => 'https://github.com/ashleymills/Reachability.swift'
end
target :XXX do
xcodeproj 'XXX/XXX.xcodeproj'
default_pods
shared_pods
end
target :XXXDev do
xcodeproj 'XXX/XXX.xcodeproj'
default_pods
shared_pods
end
target :SharedXXX do
xcodeproj 'Shared/SharedXXXX.xcodeproj'
shared_pods
end
Настройки сборки для custom framework
(SharedXXX):
Я установил свойство Embedded на Yes
Общие настройки для custom framework
(SharedXXX):
Структура, предоставляемая Cocoapods, является связанной.
И закончить,
Общие настройки для основного проекта (App Project: называется XXX на дереве)
Любая идея?
2 ответа
Я решил проблему
Во-первых, установите в Build Settings
Для основного проекта (здесь XXX):
Embedded Content Contains Swift Code
ДАПользовательская структура (SharedXXX):
Embedded Content Contains Swift Code
вNO
Пользовательская структура (SharedXXX):
Runpath Search Path
знак равно@executable_path/../../Frameworks
Это помогло мне решить эту проблему
Я столкнулся с той же проблемой при попытке загрузить из Xcode 9.3 Это произошло потому, что я добавил "use_frameworks" в свой OneSignal NotificationServiceExtension
Значение Always Embed Swift Standard Libraries, находящееся в настройках сборки, должно быть установлено на " Да" только для основных проектов, а не для пользовательских платформ или расширений.