蘋果ipa企業包如何重簽名

工具準備app

一、codesign的命令行工具來實現重簽名。(Mac自帶)工具

二、從 developer.apple.com 獲取企業帳號有效證書,用於簽名使用。"iPhone Distribution: ***",若是沒有企業帳號可藉助第三方平臺(如:app.fubi.hk)得到蘋果企業簽名服務,這也是一個不錯的辦法。命令行

三、從 developer.apple.com 獲取描述文件,用於簽名使用。***.mobileprovisioncode

四、從 developer.apple.com 註冊簽名用包名,例如 com.***.***,用於從新簽名 com.***.***2ip

四、須要重簽名的ipa包it

生成 embedded.mobileprovision 文件io

修改文件名,修改 ***.mobileprovision 爲 embedded.mobileprovisionmobile

生成 entitlements.plist 受權機制文件打包

一、經過security命令,從embedded.mobileprovision文件中生成一個完整的plist文件終端

終端命令:

security cms -D -i "mobileprovision文件" > "entitlements文件"

具體操做命令:

security cms -D -i /../embedded.mobileprovision > entitlements_full.plist

二、獲取其中的Entitlements字段

終端命令:

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

三、文件生成後放一邊,下面的重簽名步驟會用到

解壓ipa包

unzip game.ipa

重簽名

把上面生成的entitlements.plist寫入

/usr/bin/codesign --continue -f -s "證書" --entitlements "entitlements文件" "須要簽名的app文件"

通常操做:

/usr/bin/codesign --continue -f -s "iPhone Distribution: ***" --entitlements entitlements.plist Payload/game.app

打包

zip -r sigined.ipa Payload

其餘

如下命令獲取對應app的entitlements信息並用打印,打印內容可用於建立entitlements.plist文件

codesign -d --entitlements - Payload/XXX.app

相關文章
相關標籤/搜索