前言
上線一款新的app在AppStore顯示兼容性為如下圖所示
iPhone5s以下機(jī)型不能下載,查看了其他項(xiàng)目在AppStore顯示兼容性如圖所示,趕快分析出現(xiàn)這樣原因
項(xiàng)目配置問題
-
檢查項(xiàng)目配置 在Xcode中的target->Build Settings中
Architectures
1.該編譯選項(xiàng)指定了工程將被編譯成支持哪些指令集,支持指令集是通過編譯生成對(duì)應(yīng)的二進(jìn)制數(shù)據(jù)包實(shí)現(xiàn)的,如果支持的指令集數(shù)目有多個(gè)捐祠,就會(huì)編譯出包含多個(gè)指令集代碼的數(shù)據(jù)包延蟹,造成最終編譯的包很大-
Build Active Architecture Only
1.該編譯項(xiàng)用于設(shè)置是否只編譯當(dāng)前使用的設(shè)備對(duì)應(yīng)的arm指令集榜轿。
當(dāng)該選項(xiàng)設(shè)置成YES時(shí)疼约,你連上一個(gè)armv7指令集的設(shè)備辞州,就算你的Valid Architectures和Architectures都設(shè)置成armv7/armv7s/arm64画畅,還是依然只會(huì)生成一個(gè)armv7指令集的二進(jìn)制包砸琅。2.通常情況下,該編譯選項(xiàng)在Debug模式都設(shè)成YES轴踱,Release模式都設(shè)成NO症脂。
Valid Architectures 配置為 arm64 armv7 armv7s
1.該編譯項(xiàng)指定可能支持的指令集,該列表和Architectures列表的交集淫僻,將是Xcode最終生成二進(jìn)制包所支持的指令集
設(shè)備兼容性
檢查好配置是沒問題,繼續(xù)找原因
- 問了下在打包上線的時(shí)候選擇了ipone7打包上線
1.分析原因有可能是 ipone7是64位機(jī)型,導(dǎo)致32位機(jī)型不能下載的原因,之后用 Generic ios Device 打包測(cè)試下可以下載
總結(jié):
分享一個(gè)解決問題的鏈接
iOS app submission : missing 64-bit support