结论
将编译后的.app 直接zip压缩 后缀改成ipa的方式
iOS12以后 就是向上兼容(向未来兼容) 及只能由低系统版本向高系统版本兼容
小版本不受影响 例如:13.6.1编译出包 13.3 可以安装 正常显示
iOS 9-11 可以安装没问题都是向下兼容
猜想是因为苹果在iOS12 的时候优化Assets
用脚本打包解压后Assets.car 只有10Mb左右
但用Product-Archive打包解压后Assets.car 有40Mb左右
所以推论直接脚本打包是没有做全量兼容的
AirDrop显示但无法传送文件重启手机
iphone6 9.3.2 脚本出包
- ios9-ios12 AirDrop,爱思助手安装 且能识别显示 assets中的图片
iPhone XR 12.0.1 脚本出包 正常显示
- iphone8 11.0 爱思助手安装 不能获取assets中的图片
- iphone11pro 13.3 AirDrop安装 正常显示
- iphoneX 12.0 爱思助手安装 正常显示
- iphonese 12.1.4 爱思助手安装 正常显示
- iphone6 9.3.2 爱思助手安装 不能获取assets中的图片
- iphone7p 10.1 爱思助手安装 不能获取assets中的图片
iphonese 12.1.4 脚本出包 正常显示
- iPhone XR 12.0.1 AirDrop安装 正常显示
- iPhone7p 10.1 爱思助手安装 不能获取assets中的图片
附上脚本
#包名称(以.app为后缀名的包名称)
#这里请将双引号里面的名称改为你xxx.app的名称
App_Name="CCCCFK"
#进入文件夹,如果你将xx.app包放在桌面AutoIPA文件里面,请将路径拖入下方
cd ~/Library/Developer/Xcode/DerivedData/CCCCFK-*/Build/Products/Release-iphoneos
# 先删除里面CEB的文件夹
rm -rf IPAFolder
# 再创建CEB文件夹
mkdir IPAFolder
# 在CEB文件夹里面创建Payload文件夹
mkdir IPAFolder/Payload
# 将当前目录下的CEB.app复制到Payload里面
cp -r $App_Name.app IPAFolder/Payload/$App_Name.app
# IPA包制作中可忽略iTunesArtwork这个图标,经过发现,可以不要这个图标,打包的时候只吧目录打进去即可
# cp Icon.png IPAFolder/iTunesArtwork
# 进入CEB文件夹
cd IPAFolder
# 压缩多个目录zip FileName.zip 目录1 目录2 目录3....
# zip -r $App_Name.ipa Payload iTunesArtwork
zip -r $App_Name.ipa Payload
exit 0
网友评论