错误 ITMS-90206 无效的包包含不允许的文件 'Frameworks'
Error ITMS-90206 Invalid bundle contains disallowed file 'Frameworks'
我在通过 Xcode 将我的应用程序上传到应用商店时遇到问题,尤其是这个。
我看到很多post关于这个错误,但都在谈论Extension App
,我没有使用。
我正在使用 Custom framework
和 Cocoapods
。
你可以在这里看到我的树:
- XXX是我的项目应用名称
- SharedXXX 是我的
custom framework
- Pods是
cocoa pods
创建的项目
这是我的 cocoa 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)的构建设置:
我将嵌入式 属性 设置为 Yes
custom framework
(SharedXXX)的常规设置:
链接Cocoapods提供的框架
最后,
主项目的常规设置(App 项目:在树上调用 XXX)
:
有什么想法吗?
我解决了问题
首先设置成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 上传时遇到了同样的问题
发生这种情况是因为我在 OneSignal 中添加了 'use_frameworks'
NotificationServiceExtension
构建设置中的值Always Embed Swift Standard Libraries 应设置为 Yes 仅适用于您的主项目而不适用于您的自定义框架或扩展。
我在通过 Xcode 将我的应用程序上传到应用商店时遇到问题,尤其是这个。
我看到很多post关于这个错误,但都在谈论Extension App
,我没有使用。
我正在使用 Custom framework
和 Cocoapods
。
你可以在这里看到我的树:
- XXX是我的项目应用名称
- SharedXXX 是我的
custom framework
- Pods是
cocoa pods
创建的项目
这是我的 cocoa 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)的构建设置:
我将嵌入式 属性 设置为 Yes
custom framework
(SharedXXX)的常规设置:
链接Cocoapods提供的框架
最后,
主项目的常规设置(App 项目:在树上调用 XXX)
有什么想法吗?
我解决了问题
首先设置成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 上传时遇到了同样的问题 发生这种情况是因为我在 OneSignal 中添加了 'use_frameworks' NotificationServiceExtension
构建设置中的值Always Embed Swift Standard Libraries 应设置为 Yes 仅适用于您的主项目而不适用于您的自定义框架或扩展。