框架 CFBundleIdentifier 冲突

Framework CFBundleIdentifier Collision

我使用 Cocoa Touch Framework 制作了自定义 SDK(按照这些说明制作它 https://kodmunki.wordpress.com/2015/03/04/cocoa-touch-frameworks-for-ios8-remix/)。

一个使用这个SDK的应用程序已经上传到应用程序商店并被苹果审核,一切正常。 现在我正在尝试将第二个应用程序提交到应用程序商店。 xCode 上一切正常,它显示上传已成功完成,但在上传几分钟后我收到一封信,上面写着:

CFBundleIdentifier Collision - The Info.plist CFBundleIdentifier value 'com.company.MySDK' of 'myApp.app/Frameworks/MySDK.framework' is already in use by another application.

我不明白苹果为什么还要检查应用程序框架的 bundleidentifier。看起来使用不同的包有很多类似的问题,但我还没有找到解决这个问题的方法。

非常感谢您的帮助,谢谢!

对我来说,这是由框架的 .plist 关键字 CFBundlePackageType 引起的,该关键字使用默认值 APPL 但必须更改为 FMWK (https://developer.apple.com/library/ios/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html#//apple_ref/doc/uid/20001431-111321).

如果您使用的是嵌套框架,请在常规选项卡-> 框架和库中使用“不嵌入” 例如: 您的项目使用框架 A

并且框架 A 使用框架 B、C、... 不要嵌入这些框架