0. iOSOpenDev 老早就不更了,MonkeyDev 是对 iOSOpenDev的升级。
MonkeyDev 可实现免越狱,对 app 功能进行拦截、注入,再下载到手机。 很详细,https://github.com/AloneMonkey/MonkeyDev/wiki 。
这里只做 MonkeyDev 遇到的问题、技巧之类的记录。
1、越狱下的app开发,和普通app项目一样,只要添加三处。
(图1、图2、图3的参数填写,可先创建个 Tweak 工程,然后,参数复制过来,图1的control里的包名,也要相应的改成这个项目的包名)。
2、在 1 的基础上,把Tweak插件和app开发打包成一个deb安装包。
从app项目的文件夹 Applications、DEBIAN 和插件的 Library 文件夹 ,各复制一份出来放在同一个文件夹下,运行.sh即可。
注意:1)、我发现 Applications 里面不会是最新的,好像每次运行后,如果发现里面的同名文件不会覆盖,所以app项目要先删除Applications 里面的 *.app ,再编译、运行,再提取出来。
.sh的代码如下,可自己编写,打包deb脚本
#!/bin/bash find ./Package -name ".DS_Store" -depth -exec rm {} ; dpkg-deb -Zgzip -b Package OneSetting.deb
如果脚本不能运行,先
cd 文件夹
再给权限
chmod +x 上面图片名字OneSetting.sh
参考:自 https://github.com/jackrex/FakeWeChatLoc ,他的用 iOSOpenDev。
思考:1)每次都要复制文件夹,是否有简单的方法,或编写脚本?
2)以前的 iOSOpenDev 可能需要这么麻烦,现在的 MonkeyDev 是否可以在同一个工程下开发(待验证)
3、有时候,同一个代码、同一台手机,会出现下载出错的问题,可能是你变了网络、IP。
ssh -p22 root@192.168.5.109 mkdir -p "/var/root/MonkeyDevPackages" Command PhaseScriptExecution failed with a nonzero exit code
重新执行,获取 root 权限
ssh root@同一Wi-Fi下的越狱手机ip
4、写好第一个tweak,编译,出现
building for iOS, but linking in .tbd file (/opt/theos/vendor/lib/CydiaSubstrate.framework/CydiaSubstrate.tbd) built for iOS Simulator, file '/opt/theos/vendor/lib/CydiaSubstrate.framework/CydiaSubstrate.tbd' for architecture arm64
xcode11的问题,用 Sublime Text 打开 /opt/theos/vendor/lib/CydiaSubstrate.framework/CydiaSubstrate.tbd 删掉 i386,x86_64 指令集然后保存(但这样就不支持macOS的app逆向了?)
或者下载之前的Xcode版本,
参考自:https://www.chinapyg.com/thread-137013-1-1.html