我的项目有2个目标,一个用于iOS,另一个用于watchOS 在构建选项下的项目构建设置中,我将“启用Bitcode”设置为YES 在iOS目标中,“启用Bitcode”也设置为YES 但是,watchOS目标没有“启用Bitcode”选项。
当我存档我的项目并将其提交给iTunesConnect时,它被拒绝,我收到一封电子邮件,提到两个错误:
第一个错误:
无效的Bundle Executable - 可执行文件xxxxx包含不完整的bitcode。要使用完整的bitcode编译二进制文件,请打开Xcode并在“产品”菜单中选择“存档”。
第二个错误:
无效的段对齐 - xxxxx处的应用程序二进制文件没有正确的段对齐。尝试使用最新的Xcode版本重建应用程序。
到第1个错误:
xxxxx是我的watchOS目标,其中我没有启用bitcode的选项。
到第二个错误:
我有最新的Xcode版本。
有什么建议吗?
修改
可以设置缺少的"启用bitcode"选项作为目标构建设置中的用户定义标志(ENABLE_BITCODE = YES
)。但是,错误仍然相同......
答案 0 :(得分:0)
需要做两件事来弥补错误:
显然,Xcode 9.2仅针对iOS目标构建选项下的构建设置Enable Bitcode
。
观看扩展程序目标需要将用户定义的构建设置ENABLE_BITCODE
设置为YES
。
此外,我的工作区中的路径错误 我的工作区包含2个项目,每个项目都有一个iOS和一个watchOS目标。第一个项目是我的应用程序,第二个项目是应用程序使用的框架 Apple开发人员技术支持建议删除我的应用程序的所有引用到Xcode的项目导航器中的框架,然后在 General / Embedded Binaries 下添加两个app目标的框架。
这使我可以创建一个有效的存档,可以提交到App Store并被接受。