iOS開發(fā)-ipa重簽(企業(yè)簽)

重簽一般有兩種,一種是改bundle ID,一種是不改bundle ID,bundle ID的重要性大家都這道,而且輕易不能改動,所以我這里只寫不改bundle ID的方法。

準(zhǔn)備工作

首先你得有個蘋果開發(fā)者證書
然后準(zhǔn)備一個mobileprovision描述文件,可以在你的https://developer.apple.com/account/ios/certificate/上創(chuàng)建和下載
或者從Xcode中導(dǎo)出。
將準(zhǔn)備好的xxx.mobileprovision文件重名為embedded.mobileprovision。

生成 entitlements.plist 文件

  1. 使用iReSign對進(jìn)行重簽名,然后將重簽名后的包進(jìn)行解壓,得到entitlements.plist文件
  2. 通過mobileprovision文件生成:
    首先生成一個完整的plist文件
security cms -D -i embedded.mobileprovision > embedded.plist
iamge.png

我們實際上需要的是中間紅線框的那部分,接下來執(zhí)行

/usr/libexec/PlistBuddy -x -c 'Print:Entitlements'  embedded.plist > entitlements.plist

重簽名

一切準(zhǔn)備就緒,接下來開始進(jìn)行簽名操作了

  1. 解壓ipa包(xxx.ipa為你的需要重簽名的包)
unzip xxx.ipa
  1. 刪除簽名文件
rm -rf Payload/xxx.app/_CodeSignature/
  1. 替換配置文件
cp embedded.mobileprovision Payload/xxx.app/
  1. 簽名
codesign -f -s "你的證書的名稱" --entitlements entitlements.plist Payload/xxx.app

tip:證書的名稱你可以通過mac自帶的keychain Access鑰匙串訪問程序查看電腦上的證書。

  1. 打包
zip -r resign_xxx.ipa Payload/

tip:resign_xxx.ipa就是你重簽的包了,名字可以隨便起。

注意:企業(yè)包簽名的話ipa

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容