在某些情況下,需要去下載舊版 app,至於什麼情況呢,不好說~ 😁
這裡提供個人覺得還不錯的方法,主要環境是在 windows 下使用 python 指令去下載,再傳到 Mac 使用 airdrop 給 iPhone 安裝。
首先要先 git clone 這個 2 repo:
https://github.com/NyaMisty/actions-iTunes-header
https://github.com/NyaMisty/ipatool-py
接著還要安裝 iTunes v12.6.5.3版 , 在上述 repo 頁面也有連結或方法可以下載。
其實也有不用安裝 iTunes 的方法,但因為目前大部份人都有使用2步驟驗證,必需得透過 iTunes 驗證登入才能順利下載 app。
使用終端機(有系統管理員權限)方式,安裝 python 相依套件:
# 安裝 frida, 主要是為了介入 iTunes 取得登入 session
pip install frida
# 安裝 ipatool-py 所需要的相依套件
cd ipatool-py
pip install -r requirements.txt
先執行 iTunes 要作的事,patch 與登入
# 進剛 clone 下來的目錄並執行下列指令
cd actions-iTunes-header
python .\workflow_helper\iTunesInstall\patch_itunes.py
# 這時才能開啟 iTunes 並驗證登入,再執行以下指令
python .\workflow_helper\iTunesDownload\get_header.py
此時可以看到會啟用一個 web server
再開另一個終端機視窗,執行查詢或下載指令
# 先到剛 clone 下來的目錄
cd ipatool-py
# 先查詢 app 版本資訊:
python main.py lookup -b com.facebook.Facebook -c TW
可以得知 appId,但沒有版本 Id
下載指令:
python main.py lookup -b com.facebook.Facebook -c TW download -s http://127.0.0.1:9000 --appVerId xxxx
參數:
-b
要查詢 app 的 BundleId
-c
國家,此例是 TW
-s
上面啟用的 web server 的網址
-appVerId
每個版本都有自已的 Id,要自已查,不帶會預設會下載最新版本
下載完後,再丟到 Mac 透過 airdrop 到 iPhone 就會自動安裝了。
講個密訣:
可以下載最新的版本,再把 ipa 解壓縮,之後可以從 iTunesMetadata.plist 可以得知版本 id,但就得自已去對應那個版本號,再去下載指定的版本~ 😁
留言