xcode 7.1 swift框架应用程序构build但不归档
我在Swift中创build了一个示例框架,xcode 7.1。 然后构build框架以进行性能分析,发布版本。 发布的框架然后添加(embedded)到iOStesting应用程序。
该应用程序生成的罚款,但试图归档时。 一个错误发生,说“位码包不能生成,因为”… /testing/ FW.framework /固件“没有完整的位代码。所有框架和dylib的位码必须从Xcode档案或安装构build生成的架构arm64 “
框架和应用程序项目都是默认设置,启用了Bitcode。
为了确保Framework有位代码,在Framework上使用这个命令
“otool -l FW.framework / FW | grep __LLVM”
产量
segname __LLVM
segname __LLVM
segname __LLVM
segname __LLVM
我错过了什么? 我在这里包含了这两个项目,你可以下载它们并尝试归档。
xcode要求在归档期间生成所有embedded式框架的位码。
复制framework / dylib的发布版本是不够的
做
归档框架,然后使用该框架的存档版本。
为了让xcode存档一个框架(通常它只存档应用程序),将框架目标的构build设置“skip install”设置为NO!
如果可以构build框架,则可以进行以下操作(例如,如果您使用自己的框架)
这将允许你的框架提供所需的位码。
如果您没有watchOS和Apple TV(根据文档),另一个备选scheme可能适用,
对于iOS应用程序,位代码是默认的,但是可选的。 如果你提供位码,应用程序包中的所有应用程序和框架都需要包含位码。 对于watchOS和tvOS应用程序,位码是必需的。
这个选项需要为buildSetting中的每个目标设置ENABLE_BITCODE
为NO
,但是正如所期望的,这个禁止使用位码function。
关于位码的更多信息