-- 2016.09.15 --
補(bǔ)充自己砸殼加dylib的過程(詳細(xì)步驟見蝦神的hook項(xiàng)目,此處為補(bǔ)遺)
- clutch -i //在越獄機(jī)器上執(zhí)行,列出已安裝應(yīng)用
- clutch -d 14 //14為我機(jī)器上pokemon go的編號(hào)
- 拿到ipa后提權(quán)
chmod 777 pokemongo
- 用yolo修改binary加載動(dòng)態(tài)庫
注意當(dāng)前5625ffd這個(gè)commit是最新的,但是這個(gè)版本不能處理32bit thin binary,看issue 3對(duì)代碼做修改后才行
可以用file命令查看自己砸殼后的包是什么架構(gòu)的
在yolo complete以后可以用MachOView加載一下binary看load section有沒有加載自己新添加的dylib
-- 2016.07.10 --
獲取本機(jī)signing identity列表命令
- 可以直接拿到名稱用于簽名步驟
security find-identity -v -p codesigning
-- 2016.07.09 --
Clone 蝦神項(xiàng)目
生成LocationFaker.dylib
- 打開工程,可以看到核心代碼就是hook了CLLocation的coordinate方法,這里我們可以修改48/49兩行的坐標(biāo)為任意不鎖區(qū)地點(diǎn)
- 修改code sign和證書,建議使用通配證書這樣就不用修改bundle id了
- 注意Project和Target下的都要修改
- 這步其實(shí)修改不對(duì)也沒關(guān)系,保證能編譯成功就行,在生成以后還可以重簽,見重簽部分
- 編譯后提示找不到iOSOpenDev目錄
安裝iOSOpenDev
- 官網(wǎng)給的installer在跑到最后一步的時(shí)候提示失敗
- 官方github issue里給的解決方案太麻煩了,要安裝一坨東西。。
- 搜到楊神的動(dòng)手實(shí)錄發(fā)現(xiàn)可以直接手動(dòng)執(zhí)行
cd /opt/iosopendevsetup/bin
sudo ./iod-setup base
// 可能是我機(jī)器 上還有8.1的SDK所以很快就安裝完了
- 重新build后重命名Product目錄下生成的dylib文件為libLocationFaker.dylib,復(fù)制備用
更新ipa中的相應(yīng)文件
- 先解壓pokemon_unsigned.zip,顯示app里的包內(nèi)容
- 用上一步中生成的libLocationFaker.dylib做替換
- 找到自己第二步中修改的證書對(duì)應(yīng)的mobileprovision文件
- 方法是Xcode->Preference->Account->選擇相應(yīng)的Team->View Details->在相應(yīng)的描述文件上右鍵選擇Show In Finder
- 重命名mobileprovision文件為embedded.mobileprovision并替換Payload目錄下的文件
重簽名ipa
- 蝦神已經(jīng)準(zhǔn)備好了fastlane重簽?zāi)_本,在resign目錄下
- 執(zhí)行命令
sudo gem install fastlane
- 把pokemongo.app拖入iTunes,然后到Apps->My Apps->Pokemon Go->右鍵選Show In Finder找到ipa
- 修改Fastfile(我實(shí)驗(yàn)下來文件中必須寫絕對(duì)路徑,否則提示找不到文件)
32行,ipa,填寫ipa絕對(duì)路徑
33行,signing_identity,不會(huì)寫可以先寫一個(gè)"iPhone Distribution",后期根據(jù)提示修改
34行,provisioning_profile,復(fù)制前面的mobileprovision到目錄下,并填寫絕對(duì)路徑
- 在Fastfile同目錄下執(zhí)行命令
fastlane ios resign
- 此時(shí)會(huì)提示Couldn't find signing identity并列出Available identities,選擇之前證書對(duì)應(yīng)的項(xiàng)復(fù)制,ctrl+c中斷執(zhí)行,再修改Fastfile對(duì)應(yīng)項(xiàng),再重新執(zhí)行上述命令
- 此時(shí)可以用這個(gè)證書名重簽一次libLocationFaker.dylib來保證成功
codesign -f -s "iPhone Distribution: Your Company" libLocationFaker.dylib
- 當(dāng)出現(xiàn)
fastlane.tools finished successfully ??后目錄下的ipa就是重新簽名完成的了
發(fā)布到fir之類的平臺(tái)上安裝使用
- Done