準(zhǔn)備工作:重簽名App
framework注入
1 新建 Framework
project Targets 新建 Coco Touch Framework ,在新建的Framework 寫(xiě)注入代碼image.png
此時(shí)鸠窗,在framework中寫(xiě)入的代碼并不會(huì)貝調(diào)用
2 修改ipa中可執(zhí)行Macho文件姐叁,注入framework
利用yololib修改原砸殼ipa中可執(zhí)行Macho文件毅厚,引入自建Framework医吊。
yololib文件可放在usr/local/bin目錄下赂蕴,省去每次輸入yololib文件路徑的麻煩朴乖、
yololib Speedtest Frameworks/speed_looha.framework/speed_looha
image.png
完成,然后打包ipa窜护,重新簽名。
ps:驗(yàn)證是否修改成功非春,把修改后的Macho在Macho文件中打開(kāi)柱徙,查看load commands,在末尾可以看到自建framework路徑,即成功奇昙。
image.png
3 重新run即可看到注入的代碼
dylib注入
1 新建 dylib
project Targets 新建,選擇macos 护侮,Library ,在新建的Framework 寫(xiě)注入代碼!
image.png
2 修改 dylib 可以在ios環(huán)境下運(yùn)行
->build setting->baseSDk - > 選擇ios
image.png
->build setting->sign identity - > 選擇iosDev
image.png
3 生成dylib,并打包到framework文件中
選擇自建dylib储耐,build一次羊初,dylib
image.png
打包到framework,Targets選擇project,+ New copy fiels
image.png
Destination 選擇framework长赞,然后選擇dylib添加晦攒;
3 修改腳本,修改Macho文件得哆,添加執(zhí)行目錄
注入
yololib "$TARGET_APP_PATH/$APP_BINARY" "Frameworks/libspeed_looha.dylib"
ps :若無(wú)法簽名dylib脯颜,可以手動(dòng)將dylib打包到原ipa文件。