您现在的位置是:首页 >其他 >安卓逆向frida如何主动调用安卓toast函数网站首页其他
安卓逆向frida如何主动调用安卓toast函数
简介安卓逆向frida如何主动调用安卓toast函数
function showToast(message) {
Java.perform(function () {
// 获取应用的 Context
var Toast = Java.use('android.widget.Toast');
var currentApplication = Java.use('android.app.ActivityThread').currentApplication();
var context = currentApplication.getApplicationContext();
// 获取主线程 Looper
var looperClazz = Java.use("android.os.Looper");
var mainLooper = looperClazz.getMainLooper();
// 使用 Handler 来执行主线程任务
var Handler = Java.use('android.os.Handler');
var handler = Handler.$new(mainLooper);
// 创建 Runnable 的实例,封装显示 Toast 的操作
var Runnable = Java.use('java.lang.Runnable');
var runnable = Java.registerClass({
name: 'com.example.FridaRunnable', // 动态类的名称
implements: [Runnable], // 实现 Runnable 接口
methods: {
run: function () {
var String = Java.use("java.lang.String");
var hookContent = String.$new(message); // 使用传入的消息
Toast.makeText(context, hookContent, Toast.LENGTH_LONG.value).show();
}
}
});
// 创建新的 Runnable 实例并通过 handler.post 执行
handler.post(runnable.$new());
});
}
参考文章:安卓逆向frida如何主动调用安卓toast函数_frida toast-CSDN博客
参考文章里面的代码在执行的过程中会卡柱,结合gpt解决了,为了方便调用,直接封装成了方法方便外部调用
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。