1,使用系统命令重签
查看可以签名的私钥证书
security find-identity -v -p codesigning
查看二进制描述文件
security cms -D -i example.mobileprovision
给app签名
codesign -s 'iPhone Developer: xxx (xxx)' Example.app
给app重签名
codesign -fs "iPhone Developer: xxx (xxx)" --no-strict Payload/xxx.app
查看签名是否合法
codesign -v xxx.app
查看app中的签名信息
codesign -vv -d Example.app
把Payload压缩成ipa安装包
zip -qry Payload xxx.ipa
重签名步骤:
解压ipa包-》拷贝新的mobileprovision文件-》 使用codesign重新签名-》把app重新压缩成ipa包-》完成。
unzip -q xxx.ipa -d <destination>
cp embedded.mobileprovision Payload/xxx.app
2、使用fastlane签名
sigh resign ./xxx.ipa --signing_identity "iPhone Distribution: xxxx" -p "xxx.mobileprovision"
cp /Users/xx/xxx/xxxapp.ipa ./
unzip xxxapp.ipa
cp -rf /Users/xx/Downloads/www-17/* ./Payload/xxxapp.app/www
zip -qry xxxapp.ipa Payload
sigh --adhoc -n "profilename in developercenter" -a "app bundle identifier name" -u xxx@dd.com -q "xxx.mobileprovision"
sigh resign xxxapp.ipa --signing_identity "security find-identity本机私钥证书的名字" -p "xxx.mobileprovision"
3、签名原理解释
从appstore下载的app无法重新签名?
企业app可以重新签名
adhoc app可以重新签名