嵌套中的 Xposed Hook 构造函数 Class
Xposed Hook Constructor in Nested Class
我正在尝试使用 Xposed 挂钩嵌套 class 的构造函数,但我得到了嵌套 class (SettingsAdapter) 的 ClassNotFoundException。不过嵌套的class中还有一个方法hook起来没有问题。我在调用构造函数时有什么问题吗?
这是构造函数调用:
findAndHookConstructor("com.angrydoughnuts.android.alarmclock.ActivityAlarmSettings$SettingsAdapter", lpparam.classLoader, "SettingsAdapter", "android.content.Context", "java.util.List", new XC_MethodHook() {
这是另一个工作方法调用:
findAndHookMethod("com.angrydoughnuts.android.alarmclock.ActivityAlarmSettings$SettingsAdapter", lpparam.classLoader, "getView", "int", "android.view.View", "android.view.ViewGroup", new XC_MethodHook() {
提前致谢!
内部classes有一个隐含的参数,它持有超级实例。在您的情况下,这将是对 ActivityAlarmSettings
.
的引用
你可以试试
findAndHookConstructor("com.angrydoughnuts.android.alarmclock.ActivityAlarmSettings$SettingsAdapter", lpparam.classLoader, "com.angrydoughnuts.android.alarmclock.ActivityAlarmSettings", "android.content.Context", "java.util.List", new XC_MethodHook() {
或者只使用 hookAllConstructors
顺便说一句:您对 findAndHookConstructor 的调用似乎包含构造函数的名称。这不是预期的参数!构造函数名称始终是 class 名称,xposed 不希望您传递它。
我正在尝试使用 Xposed 挂钩嵌套 class 的构造函数,但我得到了嵌套 class (SettingsAdapter) 的 ClassNotFoundException。不过嵌套的class中还有一个方法hook起来没有问题。我在调用构造函数时有什么问题吗?
这是构造函数调用:
findAndHookConstructor("com.angrydoughnuts.android.alarmclock.ActivityAlarmSettings$SettingsAdapter", lpparam.classLoader, "SettingsAdapter", "android.content.Context", "java.util.List", new XC_MethodHook() {
这是另一个工作方法调用:
findAndHookMethod("com.angrydoughnuts.android.alarmclock.ActivityAlarmSettings$SettingsAdapter", lpparam.classLoader, "getView", "int", "android.view.View", "android.view.ViewGroup", new XC_MethodHook() {
提前致谢!
内部classes有一个隐含的参数,它持有超级实例。在您的情况下,这将是对 ActivityAlarmSettings
.
你可以试试
findAndHookConstructor("com.angrydoughnuts.android.alarmclock.ActivityAlarmSettings$SettingsAdapter", lpparam.classLoader, "com.angrydoughnuts.android.alarmclock.ActivityAlarmSettings", "android.content.Context", "java.util.List", new XC_MethodHook() {
或者只使用 hookAllConstructors
顺便说一句:您对 findAndHookConstructor 的调用似乎包含构造函数的名称。这不是预期的参数!构造函数名称始终是 class 名称,xposed 不希望您传递它。