package com.test.testapplication;
import android.content.Context;
import android.webkit.ValueCallback;
import android.webkit.WebView;
public abstract class TXOut extends WebView {
public TXOut(Context context) {
super(context);
}
private class TXIn implements Runnable {
String a;
ValueCallback b;
TXIn(String str) {
this.a = str;
}
private void b() {
TXOut.this.evaluateJavascript(
"(function() { return ('<html>'+document.getElementsByTagName('html')[0].innerHTML+'</html>'); })();",
new ValueCallback<String>() {
@Override
public void onReceiveValue(String html) {
// code here
}
});
}
public void run() {}
}
}
我如何使用frida钩住TXOut ---> TXIn ---> b ---> new ValueCallback()---> onReceiveValue?
我想获取此方法的html参数
最佳答案
匿名内部类使用以下方案获取生成的类名称:
<outer class name>$<number>
数字从1开始,对于每个匿名内部类,数字仅增加1。
因此,在您的情况下,最有可能是
com.test.testapplication.TXOut.TXIn$1
。似乎您正在练习使用Frida,因为通常您没有应用程序的源代码。
因此,常见的方法是使用已编译的APK文件,然后使用例如
apktool
。在生成的smali源代码中,您可以轻松识别所需的内部类,只需将/
替换为.
,即可将smali类名转换回常规Java类名。