ipa 重籤

IPA 重簽名

注意:這篇文章所記錄的技巧僅供你們交流學習使用,不要像快用那樣用做盜版分發ios

在平常生活中,常常會有朋友丟給你本身寫的ipa,或者有的app沒有上架appStore,只有一個越獄渠道的版本。sql

這個時候若是咱們設備沒有越獄的話,能夠經過重簽名的方法來將這個app部署到咱們的開發機上,所謂開發機就是安裝了證書的手機。app

對於重簽名,能夠經過一個軟件 InstaSign ,來自動化實現這個過程。可是有個很大的弊端,它會破壞掉咱們的發佈環境,即替換了/usr/bin/codesign。學習

這個時候,咱們能夠手動實現這個流程。ui

咱們這裏用布卡漫畫來舉例:spa

  • 解壓ipa,露出Payload 文件命令行

  • 將Payload 文件中的 _CodeSignature 文件夾完全刪除3d

  • 從你的一個能正確部署到手機上的項目xxxxx.app中拷貝 embedded.mobileprovision 文件code

  • 去keychain 中搜索iPhone 以下圖:

複製和第三步一樣的一個證書的名稱:iPhone Developer: XXXXXX (XXXXXX) 這樣的一個結構,若是是從企業證書發佈環境下拷貝的就是iPhone Distribution: xxxxx (xxxxxx)。blog

  • 在命令行下,cd到 Payload 文件夾以外。
1
/usr/bin/codesign -f -s "iPhone Developer: XXXXXXXX (XXXXXXXX)" --resource-rules bukaios.app/ResourceRules.plist bukaios.app

若是一切正確,則會提示:bukaios.app: replacing existing signature

  • 打包回ipa, zip -r buka.ipa Payload
  • 在XCode-Organzier-Devices 左側的已鏈接設備中選擇Apllications-Add
  • 不出意外就能安裝成功。

  • 若是喜歡,能夠把這整個流程寫成一個批處理。

相關文章
相關標籤/搜索