我正在构建和分发iOS Framework库供其他开发人员使用。
最近我遇到了一个bug (feature?) of the Apple Store,如果iOS框架是使用x86架构构建的(对于模拟器)那么整个应用程序都无法通过App Store批准并出现错误:
[Transporter Error Output]: ERROR ITMS-90087: "Unsupported Architectures. The
executable for blah.app/Frameworks/MyLib.framework contains
unsupported architectures '[x86_64, i386]'."
这里的最佳做法是什么?我应该:
包括调试(使用模拟器)和发布(没有模拟器)构建的框架?
在最终用户部署其应用之前,从框架中提供script to strip x86?
动态框架?还是其他什么?
我的偏好是尽可能少地为最终用户增加负担,因此iOS框架构建应该只是“工作”。但是,iOS App Store认证相当新,所以无论如何都会感激不尽!
答案 0 :(得分:2)
的最佳实践方式
您需要为设备和模拟器单独构建。这是调试和发布的基本方法。
是的。这是简单而且最好的方式。没有模拟器的发布是销售的基本方式,在开发时无法调试。
专业级别可以使用脚本从框架中提取合并的模拟器构建/体系结构。但这可能是额外的任务。