注意:這篇文章所記錄的技巧僅供你們交流學習使用,不要像快用那樣用做盜版分發ios
在平常生活中,常常會有朋友丟給你本身寫的ipa,或者有的app沒有上架appStore,只有一個越獄渠道的版本。sql
這個時候若是咱們設備沒有越獄的話,能夠經過重簽名的方法來將這個app部署到咱們的開發機上,所謂開發機就是安裝了證書的手機。app
對於重簽名,能夠經過一個軟件 InstaSign ,來自動化實現這個過程。可是有個很大的弊端,它會破壞掉咱們的發佈環境,即替換了/usr/bin/codesign。學習
這個時候,咱們能夠手動實現這個流程。ui
咱們這裏用布卡漫畫來舉例:spa
解壓ipa,露出Payload 文件命令行
將Payload 文件中的 _CodeSignature 文件夾完全刪除3d
從你的一個能正確部署到手機上的項目xxxxx.app中拷貝 embedded.mobileprovision 文件code
複製和第三步一樣的一個證書的名稱:iPhone Developer: XXXXXX (XXXXXX) 這樣的一個結構,若是是從企業證書發佈環境下拷貝的就是iPhone Distribution: xxxxx (xxxxxx)。blog
1 |
/usr/bin/codesign -f -s "iPhone Developer: XXXXXXXX (XXXXXXXX)" --resource-rules bukaios.app/ResourceRules.plist bukaios.app |
若是一切正確,則會提示:bukaios.app: replacing existing signature
不出意外就能安裝成功。
若是喜歡,能夠把這整個流程寫成一個批處理。