Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在寻找一种以编程方式获取函数调用地址的方法:来自 KeyboardView.OnKeyboardActionListener 接口的 public abstract void onKey (int primaryCode, int[] keyCodes)。
这些函数的地址是静态的吗?即它是否总是加载在同一个内存中。
我正在尝试实现键盘记录器的篡改保护。
你的问题根本没有意义,因为你问的是如何获取函数指针,而事实上,Java 没有函数指针的等价物(你只看到通过对象动态调度中的函数引用)。
函数的地址可能是静态的,也可能根本不存在,但这对你来说都是透明的,因为代码是在虚拟机中运行的。如果您是在 NDK 级别询问,您当然可以使用&C 中的简单函数获取函数的地址。但是,在 Java 级别这是不可能的。
&
但是,您没有说明为什么这会帮助您防止键盘记录器。