提交app Store审核时,Missing 64-bit support问题的解决办法

处理方法如下:

1、确保Xcode版本号>=5.0.1
2、更新project settings, minimum deployment target >= 5.1.1
3、Valid Architectures 添加设置 armv7 armv7s arm64
4、改变Architectures为 Standard architectures(include 64-bit)
5、之后再在Architectures添加armv7 armv7s arm64三个.

xcode中的相关设置如下图:

关于Build Active Architecture Only属性 :

Build Active Architecture Only这个属性,设置为NO时,会编译所有的版本,不过打出来的包会大不少。这个属性设置为yes,是为了debug的时候编译速度更快,它只编译当前的architecture版本
以下是设备对应的architecture:

armv6:iPhone 2G/3G,iPod 1G/2G

armv6:iPhone 2G/3G,iPod 1G/2Gfile:///Users/apple/Desktop/屏幕快照%202015-08-19%20下午1.54.10.png

armv7s:iPhone5, iPod5

编译出的版本是向下兼容的,比如你设置此值为yes,用iphone4编译出来的是armv7版本的,iphone5也可以运行,但是armv6的设备就不能运行。

所以,一般debug的时候可以选择设置为yes,release的时候要改为no,以适应不同设备。

设置好以后,再Product->Archive的时候,有可能会遇到这样的错误:Apps that include an arm64 architecture are required to include an armv7
遇到上面的报错:把真机拔掉就可以了~
如果上传 包的时候 提示 Redundant binary upload的错误,这是因为 已经有 同一个version,同一个build的包已经被上传,让build增加 1就 可以上传了。
综上所述,上传二进制文件需要注意的事项有以下:
1.修改软件的版本号,在info.plist修改“Bundle versions string, short”为自己需要的版本号如“1.0.0”,修改“Bundle identifier”为发布用的APP ID,如:com.xxx.xxxx。如果是审核通过前撤下或者被拒绝重新提交,把Bundle version的号➕1.
2.证书,修改为发布版本所用的provisioning Profile和证书。
3.Product->scheme->Edit scheme,把Build Configuration设置为release。
4.Build Active Architecture Only设置为NO。
5.最好把电脑上连接的设备拔掉。
6.set the active scheme为iOS Device。
这样就可以打包提交appstore审核了。
原文地址:https://www.cnblogs.com/hecheng0314/p/4742028.html