HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 是否可以仅在使用设备而非模拟器进行测试时使用静态库?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有外部封闭的库,只能用armv7s(等)编译.当我尝试编译模拟器时,显然它没有运行并显示一些错误.
我不想将此库插入到我的代码中,除非我可以将 Xcode配置为仅在我使用设备进行测试时才使用此库.
不幸的是,我试图用cocoapods做这个没有成功,我想知道有没有办法做到这一点?

解决方法

是的,这可以做到.我有一个类似的问题,框架只在模拟器中导致链接错误,所以我设置我的项目只在构建设备时使用框架.

以下假设您没有使用可可豆荚链接库.如果你是的话,我不确定需要改变什么.

>选择目标并转到“构建阶段”选项卡.
>在“使用库链接二进制”部分下,从列表中删除静态库.
>转到“构建设置”选项卡.
>找到“其他链接器标志”设置.
>双击Debug值.点击并输入-lsomelibrary
>代替“somelibrary”输入库的实际名称减去前导“lib”.不要包含扩展名.
>选择Debug值并注意一点圈出.点击 .
>单击新的“任何架构|任何SDK”部分并将其更改为“任何iOS模拟器SDK”.
>现在双击“Any iOS Simulator SDK”右侧的值并删除添加的-lsomelibrary条目.

现在做一个调试版本.

上述更改基本上意味着除了iOS模拟器构建之外,所有构建都链接了库.

您可能还需要进行一些代码更改.任何对库中的头@L_616_20@或其他符号的引用的代码都应该包装如下:

#if !target_ipHONE_SIMULATOR
#import "somelibrary.h"
#endif

#if !target_ipHONE_SIMULATOR
    // Use stuff from the library
#endif

大佬总结

以上是大佬教程为你收集整理的ios – 是否可以仅在使用设备而非模拟器进行测试时使用静态库?全部内容,希望文章能够帮你解决ios – 是否可以仅在使用设备而非模拟器进行测试时使用静态库?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。