ios – Cocoa Touch Framework无法在嵌入式项目中的模拟器上进行
我有一个可以用XCode 6构建的Cocoa Touch框架,针对iOS> = iOS8。
这个框架的目标架构设置是默认的,这意味着我没有改变任何东西。 架构设置为标准(不包括x86_64,稍后更多)。 框架本身包含Swift和Objective-C代码,因此使用Ray Wenderlich的静态库解决方法构建它将不起作用。 现在,如果我创建一个新项目并添加框架项目,该项目将为设备和模拟器构建,这是很好的。 但是,如果我把.framework文件添加到不同的项目中,就像添加任何其他框架一样,该项目不会为模拟器构建。那么它确实构建,但是它因为找不到相关类而崩溃。它在设备上工作正常,归档工作也如预期一样。 框架项目本身已经给了我一个警告; 任何帮助将高度赞赏! 解决方法
我终于找到了解决这个问题的办法。
事实证明,XCode不再创建开箱即用的胖二进制文件。不知道苹果在这个背后的推理可能是什么,我也好像有时候,负责XCode的人喜欢让开发者使用他们的产品的乐趣… 无论如何,您可以找到关于如何为模拟器和所有iOS设备创建胖二进制文件的确定性指南(是的,您甚至必须使用不同的架构来获得适用于较新和旧设备的框架):https://kodmunki.wordpress.com/2015/03/04/cocoa-touch-frameworks-for-ios8-remix/ 简而言之; >创建可可触摸框架 设置 DEVICE_BIN = “$ {} OBJROOT / UninstalledProducts / $ {} TARGET_NAME .framework” ARCHIVE_PATH = “$ {} SRCROOT / _归档” if [“$ {CONFIGURATION}”=“Release”];然后 如果[-d“$ {DEVICE_BIN}”];然后 科幻 科幻 退出0; 这将在您的项目目录中创建一个_Archive目录,您可以在其中找到调试和发布的框架。 重要提示:截至今天(2015年5月22日),您必须先使用模拟器构建项目,然后使用设备进行归档。否则你不会得到一个通用的二进制文件! 为了避免死链接错误,为了避免死链接错误,为了避免死链接错误,请务必仔细阅读kodmunki网站上发布的步骤,因为这篇文章中的步骤可能已经过时了! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |