在把应用打包安装到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

iOS 应用打包 设备兼容性问题(Build Active Architecture Only)的更多相关文章

  1. iOS之关于Architectures设置及Build Active Architecture Only编译设置

    一,前言 最近在帮朋友解决极光报错的提示:“file was built for archive which is not the architecture being linked (i386)”时 ...

  2. iOS Build Active Architecture Only 属性的理解(及 not found for architecture i386 的解决方案)

    最近做项目过程遇到一个问题: 涉及到这个属性:Build Active Architecture Only Yes .No的区别: 设置为yes,是只编译当前的architecture版本,是为了编译 ...

  3. Xcode的Architectures、Valid Architectures和Build Active Architecture Only属性

    Architectures 这代表,在这个项目里你想要Xcode编译的目标设备列表. Valid Architectures 还不是太明确这个设置的意图,但是一般来说是不需要更改的,和Architec ...

  4. Xcode的Architectures、Valid Architectures和Build Active Architecture Only属性(原创)

    最近xcode升级了5.1版本,升级之后程序报关于要适配arm64机器的错.之前对xcode的参数配置,一直不是很了解,但实现先面对问题了,就调查了一下并解决它. 一个一个来吧. Architectu ...

  5. Xcode 中armv6 armv7 armv7s arm64 i386 x86_64 归纳 (Architectures, Valid Architectures, Build Active Architecture Only)

    http://www.jianshu.com/p/09b445300d40 简介: armv7|armv7s|arm64都是ARM处理器的指令集 i386|x86_64 是Mac处理器的指令集 目前i ...

  6. xcode选项Build Active Architecture Only的作用

    Build Active Architecture Only 设置: 设置为NO的时候,会导致react-native项目启动失败npx react-native run-ios 根据错误信息 bui ...

  7. 关于Build Active Architecture Only属性

    关于Build Active Architecture Only属性 Architecture 属性在BuildSetting里. 这个属性设置为yes,是为了debug的时候编译速度更快,它只编译当 ...

  8. xcode编译时,有第三方库时,编译设置build active architecture only问题

    本文转载至 http://blog.csdn.net/ysysbaobei/article/details/16371263 编译静态库 1.http://blog.csdn.net/dengdeng ...

  9. ios批量打包

    最近我们接到了新的需求,需要打出类似xx001-xx100共100个这样的ipa渠道包,不需要签名.(这批ipa包后续会用企业证书签名,不会影响AppStore的) 这些包所有的功能.内容都是一样的, ...

随机推荐

  1. java Map集合对比分析

    1.Map:Map是所有map集合的顶级父接口,用于key/value形式的键值对,其中每一个key都映射到一个值,key不能重复. 2.TreeMap:该map将存储的键值对进行默认排序,并且还能够 ...

  2. maven之基础

    一.配置maven的环境 下载地址:http://maven.apache.org/download.cgi(window下载(Binary zip)的) 将maven解压,然后配置环境变量打开: 计 ...

  3. cppcon

    https://cppcon.org/ https://github.com/cppcon

  4. win7 休眠功能的开启与关闭

    1. 打开控制面板得下面目录,编辑计划设置

  5. spring配置文件加密

    原文:http://www.open-open.com/code/view/1453520072183 spring框架在一些对安全性要求较高的生产环境下,配置文件不允许出现明文用户名密码配置,如数据 ...

  6. InfluxDB useful commands

    InfluxDB 配置文件地址:/etc/influxdb/influxdb.conf 通过curl写数据 curl -i -XPOST 'http://localhost:8086/write?db ...

  7. Linux命令chattr和lsattr

    先看字面解释: chattr:chattr - change file attributes on a Linux file system lsattr - list file attributes ...

  8. [Angular] Communicate Between Components Using Angular Dependency Injection

    Allow more than one child component of the same type. Allow child components to be placed within the ...

  9. 【C】字符串,字符和字节(C与指针第9章)

    C语言没有一种显式的数据类型是字符串的. C语言存储字符串:字符串常量(不能改动).字符数组或动态分配的内存(能够改动) *************************************** ...

  10. The type java.lang.reflect.AnnotatedElement cannot be resolved. It is indirectly referenced from required .class files

    我这个错误发生于导入项目的时候..我发现主要是jdk版本的问题.切换一下jdk.直接红叉消失就可以了.....jdk版本一致性还是很重要的