低版本Xcode打包IPA,供高版本iOS系统使用

1,112 阅读1分钟

场景:使用XCode 12.4进行打包的IPA,在系统为iOS 15以上的iPhone上不能进行安装。(到现在了,老板暂时还是不想适配iOS 15)

此IPA包在iOS 15以上的iPhone上不能进行安装:

截屏2022-01-06 下午2.56.52.png

需求介绍:要实现“Xcode低版本打包IPA,供高版本iOS系统使用”


首先获取到所有证书钥匙链信息: 在终端输入security find-identity -v -p codesigning命令 截屏2022-01-06 下午2.32.58.png 所有证书的钥匙链信息

拿到项目的证书对应钥匙链信息:B3123456789123456789123456789123456789DA

1.将IPA文件改成zip格式,再进行解压。

截屏2022-01-06 下午2.42.00.png

改成zip格式

截屏2022-01-06 下午2.42.38.png

IPA文件解压后

  1. 在终端(cd)打开IPA目录下运行如下命令: codesign -s "(钥匙串)证书名" -f --preserve-metadata --generate-entitlement-der ./Payload/appName.app
  • [A].打开IPA的目录: cd /Users/gyh/Desktop/AppName\ 2021-12-28\ 10-59-25
  • [B].执行签名的命令: codesign -s "B3123456789123456789123456789123456789DA" -f --preserve-metadata --generate-entitlement-der ./Payload/AppName.app/

执行成功后的打印:

Warning: default usage of --preserve-metadata implies "resource-rules" (deprecated in Mac OS X >= 10.10)!
./Payload/AppName.app/: replacing existing signature

其中“Warning: default usage of --preserve-metadata implies "resource-rules" (deprecated in Mac OS X >= 10.10)!”警告可忽略!

3. 再在终端运行如下命令: zip -ru AppName.ipa Payload/

新生成的IPA包:

截屏2022-01-06 下午2.52.43.png

重新生成的IPA,就可以供高版本iOS系统使用了!