iOS15出现后,以前版本的企业版App都会出现该问题,这个时候需要对企业版App重新签名,不需要重新打包;
首先macos版本要升级至BigSur.
在终端中执行, 首先第一步,对ipa解包:
unzip -q app.ipa
当前目录下会多出一个Payload目录.
第二步,查看本机所有签名:
security find-identity -v -p codesigning
第三步,选择对应的证书重新签名:
codesign -s "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" -f --preserve-metadata --generate-entitlement-der ./Payload/XXXX.app --verbose
第四步,合包:
zip -r newApp.ipa Payload
结束End.
若要测试安装新生成的ipa,可执行:
ios-deploy --bundle newApp.ipa
16:36分 更新:
编写了一个脚本resign.sh, 执行命令:
sh resign.sh XXXXXX.ipa
resign.sh代码:
ipaName=$1
# security find-identity -v -p codesigning查看所有证书
cer="XXXXXXXXXXXXXXXX";
echo "重签名ipa: $1"
echo "解包"
unzip -q "$ipaName"
if [ $? -ne 0 ]; then
exit
fi
echo "签名"
codesign -s "$cer" -f --preserve-metadata --generate-entitlement-der ./Payload/*.app --verbose
if [ $? -ne 0 ]; then
exit
fi
echo "合包"
zip -r "$ipaName" Payload
if [ $? -ne 0 ]; then
exit
fi
rm -rf ./Payload
echo "重签完成"