拿到一个voip的app,要选择国家的时候,特别麻烦。做脚本不利索。hook之。
1.pp助手下载的,不用脱壳了。
2.拉到mac上。ipa改为zip,解压出来,拖出来info.plist和二进制文件
3.导出头文件 class-dump -H app -o headers
4.ssh到手机上。 ssh root@localhost -p 2222 usb模式
5.ps ax 找到app 的pid
6.上cycript :cycript -p 2700
7.看看结构
8.没看出什么来。。。原谅我。就是学习了个cycript的命令。
9.打开头文件搜索 picker
10. 看到 BXRegistrationViewController.h 就是他了。
11.写个tweak把所有的方法都hook了。 发现某个看似牛逼的函数并没有使用。
12.最后决定 在按钮事件里面修改textfield的值。。
13.property的值怎么修改 还是不会啊!!!我以前好像写过setter方法的。。还是狗神告诉我的
14.直接hook变量好了。。
%hook BXRegistrationViewController
- (void)didTapContinueButton:(id)arg1{%log;
UITextField * ntf = MSHookIvar(self, "_numberPrefixTextField");
ntf.text = @"60";
UITextField * ctf = MSHookIvar(self, "_countryTextField");
ctf.text = @"Malaysia";
%orig;
}
%end
代码完成。
编译安装。只要输入号码就行了。按下按钮,自动修改。搞定。