我有这些配置,安装没问题,但是代码没生效
感觉是ios版本问题,ios16上边就没问题
好的,谢谢,不过安装其他源里边的插件是可以生效的,应该还是哪里配置有问题吧
我确实也没有生效,你现在有没有成功呢
已私信回复你, 我在这里再发一次, 如果其他人遇到类似问题也可以参考.
这是基础开发问题, 可能原因很多, 比如hook框架安装有问题, 或者theos太老不支持rootless, 或者工程配置错误, 遇到这种问题应该首先多维度去探索为什么没加载成功, 而不是一味的盲目地去试, (切记不要因为尝试太慢就放弃尝试, 因为这种基础问题都能卡壳那后面随便一个点都会卡壳了, 这种层次这就没必要追求所谓“速度”), 我只给你排查思路:
-
检测hook框架是否已经安装, 如果常见的tweak插件(比如在系统设置里增加菜单的那些插件)正常运行则代表hook框架正常
-
检查无根打包是否正常, 正常情况下打包安装后, 应该能看到对应的/var/jb/Library/MobileSubstrate/DynamicLibraries/xxx.dylib xxx.plist
-
frida注入SpringBoard, 注意注入dylib需要重启进程才能生效, 查看已加载模块列表里有没有/var/jb/Library/MobileSubstrate/DynamicLibraries/xxx.dylib, 如果没有则说明未注入所以未生效(这就要先检查xxx.plist是否有问题, 包括filter和文件权限). 当然如果模块列表里连hook框架那几个基础dylib都没有那就更有问题了(比如开启了越狱工具的禁止注入选项,或者进程不支持注入, 本例的进程是不存在这种可能的)
-
单独检查dylib是否正常, 在写个延时弹窗逻辑(或者写个肉眼能看到效果的逻辑), 然后用frida注入到springboard手动dlopen(/var/jb/Library/MobileSubstrate/DynamicLibraries/xxx.dylib)再动态执行你的入口函数, 如果可以弹窗则说明tweak代码和配置没问题. 通过系统日志来测试不一定准确, 因为有的进程(不包括本例)就是不会出日志, 另外查看日志的工具有问题也会看不到日志, 如果没把握还是建议写个弹窗进行测试, 或者写个能导致崩溃的逻辑也行
大佬牛逼!!, 一套思路醍醐灌顶。 我刚走了一遍。把hook方法里的代码 改成 访问空指针, 重新打包安装,运行直接crash。没毛病!!!。 验证插件没问题,日志工具没有收集到。



