iOS應用重簽名

網上關于簽名的腳本有很多,我找了個本人覺得比較好用的腳步iOS_resign_scripts,下載腳步里面有三個腳本文件,這里我只用了 ios_resign_from_app_to_ipa 這個腳步就可以達到我的目的了。

一、基礎環境準備

1.準備需要重簽名的IPA包

打開itunes 下載一個最新版本的微信ipa包,然后拷貝出來備用

看圖1:


itunes.png

2. 準備 mobileprovision文件
mobileprovision 文件干嘛的,怎么創建這里就不詳細說明了,搞iOS開發的都懂?? 這里將mobileprovision文件重命名 embedded.mobileprovision

看圖2:


mobileprovision.png

3.準備 Developer_code_sign

找到步驟2中mobileprovision文件對應的證書,格式類似 iPhone Distribution: xxxx. (xxxxx) 搞iOS開發的都懂??,不懂是不是應該去找原因了??

看圖3:

證書.png

4.已經脫殼的二進制decrypted文件

ipa脫殼也稱砸殼,如何脫殼看這里不再解釋了,微信砸殼會得到一個WeChat.decrypted文件, 重命名為WeChat,打開終端,輸入 chmod 777 ,然后把 WeChat拖到終端上按回車 修改下權限。

看圖4:

文件目錄.png

二、開始操刀修改文件,重簽名

搞iOS開發的都知道,在iOS系統上是通過 Bundle identifier 標識 APP 的唯一性的,那么要想在一個手機上裝兩個微信呢改下Bundle identifier 就可以實現了。

1.解壓ipa
打開終端,cd 進入 圖4所在目錄,然后 運行命令:

 unzip WeChat_6.5.2.ipa -d WeChat_6.5.2_unzip

圖5:


解壓ipa.png

圖6:


解壓成功.png

圖7:


解壓的文件目錄結構.png

2.替換砸殼了的WeChat二進制文件

圖8:


Snip20161229_21.png

圖9:

Snip20161229_22.png

3.修改 Bundle identifier

找到 包內容的info.plist 文件,修改 Bundle identifier
圖10:


Snip20161229_26.png

Xcode 打開編輯修改 Bundle identifier 的內容
圖11:

Snip20161229_25.png

4.刪除微信包里面的擴展插件(PS 目前沒找到好的辦法簽名他們,所以暴力刪除它們)

圖12:

Snip20161229_23.png

5.運行腳本,開始簽名了,打開終端,cd 進入 圖4所在目錄,運行

sh ios_resign_from_app_to_ipa WeChat_6.5.2_unzip "iPhone Distribution: xxxx xx., xx. (xxx)" embedded.mobileprovision WeChat_6.5.2-resig.ipa

圖13:

Snip20161229_28.png

簽名成功:
圖14:


Snip20161229_29.png

圖15:

Snip20161229_30.png

6.雙擊itunes 打開安裝,測試打開不閃退。
圖16.

IMG_1818.PNG
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容