如何快速便捷的查看 android 系统类的类、方法参数?

2021-05-15 10:35:11 +08:00
 jiangwei2222
最近在写 xposed 插件,在大部分手机上都没问题,但是在小米手机上死活找不到相关方法。猜测是小米对 android 源码魔改太多,方法入参或者返回变了,导致 hook 不生效。因此想看看小米系统底层的函数定义。以前都是直接看 android 源码,但是对于小米这种编译好的系统怎么看他的 android 系统类定义呢?

比如这个函数
https://android.googlesource.com/platform/frameworks/base/+/master/services/core/java/com/android/server/input/InputManagerService.java#218

我有什么办法看看在小米 rom 上面的定义呢?
8489 次点击
所在节点    Android
7 条回复
fairytale110
2021-05-15 11:16:04 +08:00
下 MIUI  ROM 反编译
www.miui.com/download.html
ochatokori
2021-05-15 12:49:23 +08:00
反编译 /system/framework/services.jar ,这里面都是没有混淆的
foil2
2021-05-15 13:54:12 +08:00
既然 root 了,那就推荐 objection (基于 Frida )
SmallZheng
2021-05-15 16:26:24 +08:00
反射打印出来
ikas
2021-05-15 17:45:21 +08:00
反编译 service.jar, framework.jar
jiangwei2222
2021-05-15 18:10:47 +08:00
@fairytale110
@ochatokori
@SmallZheng
@ikas 这些我都知道,我是想问,有没有什么工具能够图形化的直接看到所有系统类的参数😂理论上来说,基于反射是可以把所有类列出来的,而且写 xposed 插件的时候这个非常需要,我感觉应该会有人做过
micstart
2021-05-21 17:06:12 +08:00
随便写个 Android App,调用 Class.forName(className)加载想要的类,然后安装在小米手机上调试,查看返回的 Class 对象有哪些方法。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/777050

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX