iOS app重新签名

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
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 [email protected] -q "xxx.mobileprovision"
sigh resign xxxapp.ipa --signing_identity "security find-identity本机私钥证书的名字" -p "xxx.mobileprovision"

3、签名原理解释

iOS app重新签名_第1张图片
iOS证书和校验.png

从appstore下载的app无法重新签名?
企业app可以重新签名
adhoc app可以重新签名

你可能感兴趣的:(iOS app重新签名)