问题发生场景:
调试设备:iPhone5 手机一台,系统 iOS10
1、编译打包: 选择Device --自己的调试设备iPhone5
iPhone6手机安装,启动App,收到如图提示,在iOS10 系统下,APP能运行
2、升级调试设备 iPhone6 系统到iOS 11
a、点击App,出现如下提示——该App 需要更新,才能在iOS 11 下运行
b、 删除App,从新下载App,App无法安装
问题发生的原因:
1、苹果对64位应用的要求,变化历程
2013年下半年要求开发者提交64位应用;
2015年2月,审核的所有新应用必须支持64位;
2015年6月,AppStore中的所有应用必须支持64位;
2017年...32位应用无法使用;
2、编译打包时,选择自己调试设备iPhone5,所打包是32位应用。
在iOS 10.x 下,系统会有如上图1提示——未来系统不能运行次应用,联系开发者升级应用
在iOS 11.x 之后,未下载应用,则下载不能成功,已下载应用,将无法打开应用,会有如图2提示——应用需要升级,该应用无法在iOS 11下运行。
解决办法:打包成64位应用,会向下兼容32位设备
1、编译打包时,选择64位的调试设备打包
2、选择xcode 默认设备打包
如下,相同代码,打包成32位应用,跟打包成64位应用,
相差好几M(64位应用大几M);