为什么我不能为某些特定的iOS模拟器构建?
我有一个使用我自己的框架的应用程序.我为i386做了框架构建以及arm,一切都很好.我的应用程序曾经在每个模拟器上运行,并且可以在商店中使用.
现在,出于某种原因,我无法在某些模拟器上运行我的应用程序. > iPhone 4s 无效的模拟器: > iPhone 5S 错误是找不到我框架中的* .h文件. 我想知道什么可以阻止找到这个文件,或者更确切地说某些模拟器没有使用什么搜索路径.必须有一些项目/目标属性与这些模拟器类型拧紧,除了我找不到任何会产生影响的. 在我的代码中,我搜索了我会做出的任何差异,但它们只是关于UI组件的iOS版本.我也使用TARGET_IPHONE_SIMULATOR但它不应该在模拟器之间有任何区别. 仅供参考,我的应用程序版本包括Watch Kit.它正在Apple Watch以及连接到iPhone 5(外部显示器)的Apple Watch模拟器上运行.它可能是相关的…… 任何帮助非常感谢! 编辑:完整的错误说明: /Users/me/sources/myApp/iOS/trunk/include/someFile.h:18:10:’dir / someOtherFile.h’文件未找到 编辑:所有目标中的头文件: 我的框架和包含我的框架的任何.h的每个文件都只是myApp的一部分,我注意不要在myApp.watchkit或myApp.watchkitextension中添加任何引用 编辑:解决方案: > Xcode重启 编辑:64位: 我在项目文件中使用了一些类似的路径: 解决方法
解决了.问题来自我的框架,由于某种原因,它不是为64位模拟器版本构建的.
为了使一切工作正常,该项目需要4个版本的框架:x86(32位模拟器),x64(64位模拟器),armv7(32位器件)和arm64(64位器件). 然后使用项目属性,在构建时忽略不必要的框架: 忽略文件myFramework_i386.framework / myFramework_i386,文件是为归档而构建的,而不是被链接的体系结构(arm64) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |