iOS 应用打包 设备兼容性问题(Build Active Architecture Only)

 

在把应用打包安装到iPod Touch上面时,设备提示不兼容,所以就有几种猜想:

1.CPU架构问题,因为我手里这个iPod Touch的CPU是A5,是32位的;

2.TARGETS里面相关的设置对设备类型做了限制;

 

  

 

首先,检查了所有和Architecture相关的设置参数。

发现所有参数都是包含了armv7的,而且没有设置仅限于arm64架构。

 

 

我的Xcode 8里面,相关设置如图所示: 

        

     

 

 

(Build Active Architecture Only)这个设置很重要,就是只针对你当前连接的设备这种架构的硬件构建你的程序库文件,这样就可以更快地build,pods里面的第三方库都是这样的设置。

如果都设置为Yes,那么你当前如果插了iPhone真机打包,并且Archive设置为Release模式,然后发布给iPod安装,iPod就会出现兼容问题。

所以,如果你想要Archive设置为Debug,那么最好把Build Active Architecture Only里面的Debug设置为No。

 

           

 

 

 所以上面的设置是没有问题的,开始验证第二个猜测!

 

 

 

 

 

于是检查设备类型相关的设置,发现问题所在了,如图:

    

 

好的,改为Universal之后再次打包,成功解决设备兼容性问题! 

 

 

 

 

 

参考内容:http://stackoverflow.com/questions/17311075/after-update-to-xcode-5-ld-symbols-not-found-for-architecture-armv7-or-armv/17327694#17327694

 


 转载请注明出处:http://www.cnblogs.com/ficow/p/6543364.html

 

posted @ 2017-03-13 16:10  Ficow  阅读(3388)  评论(0编辑  收藏  举报