如果你想把一個ipa文件(別人發你的或者從第三方商店下載的…)安裝到自己的iPhone上,你的手機如果沒有越獄是無法正常安裝的(排除企業證書分發),但是 我們可以通過為ipa重簽名實現,原理是將我們自己的證書打進ipa。
現在我們開始來進行重簽名。
??前提:要有自己的開發者賬號。
如果你沒有開發者資格那么請看我的這篇文章
使用AltDeploy或nullxImpactor(Cydia Impactor替代品)在未越獄的iPhone上安裝任意ipa
第一步:用Xcode新建一個工程,Bundle identifier不要和手機中已有的的APP重復,然后用自己的證書打包出ipa文件。
第二步:獲取mobileprovision文件。
-
2020年1月8日更新:Catalina版本的系統把擴展名改為zip后解壓。
先將一中(用自己證書打包的)ipa包進行解壓。選中ipa包,右鍵 -> 打開方式 -> 解壓,如下圖所示:
解壓ipamobileprovision文件將圖中標記的文件拷貝到桌面(或者其他地方)后面要用。
以下第三、四、五步中如果之前已經安裝過可以跳過
第三步:安裝Homebrew
在終端先后執行下面2命令行安裝,等待進度完畢
xcode-select --install
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
第四步:安裝ruby
在終端執行下面命令安裝ruby,等待進度完畢(輸完密碼可能在較短時間無反應)
brew install ruby
第五步:安裝sigh腳本
執行下面安裝命令
sudo gem install fastlane
第六步:使用sigh腳本開始重新簽名
1、在終端輸入fastlane sigh resign ipa路徑
,回車
ipa路徑=>把要簽名的ipa文件(路徑、包名不要有中文)拖到終端窗口上,即可快速獲取
2、填寫Signing Identity:第一步中腳本會列出電腦中的證書,選擇要用的證書的SHA-1即可
如:27AF89640E0F32910815581CHB8L8281C71E8EEC8。完成后回車
3、把項目的配置文件.mobileprovision文件(第二步中的文件)拖到終端窗口上,回車
4、好了,resign腳本會自動更改bundel id,簽名并重新打包。
完成后提示Successfully signed,新生成的包會自動替換原有文件。
第七步:安裝重簽名后的ipa文件
最新的iTunes已經不能給iPhone安裝APP了,所以我們可以使用各種助手或者iTools進行安裝。