frida 追踪"UnityAds.load方法被谁调用
时间: 2023-12-06 15:02:05 浏览: 200
追踪谁调用了函数
要追踪"UnityAds.load"方法被谁调用,您需要使用 Frida hook 应用程序的 Java 层代码。下面是一个简单的示例代码:
```javascript
Java.perform(function() {
var UnityAds = Java.use('com.unity3d.ads.UnityAds');
UnityAds.load.implementation = function (arg1, arg2) {
var stacktrace = Java.use("android.util.Log").getStackTraceString(Java.use("java.lang.Exception").$new());
console.log("UnityAds.load() is called from:\n", stacktrace);
return this.load(arg1, arg2);
}
});
```
这段代码将 hook `UnityAds.load` 方法,并在该方法被调用时输出调用栈信息。您可以将上述代码保存为一个 JavaScript 文件,然后使用 Frida 来加载该文件,即可追踪 `UnityAds.load` 方法被谁调用。具体命令如下:
```bash
$ frida -U -f com.example.app -l script.js --no-pause
```
其中,`com.example.app` 是您要追踪的应用程序的包名,`script.js` 是您保存的 JavaScript 文件的路径。
阅读全文