请问老师如何查看java代码对应的native代码

来源:2-2 说说Android系统的启动

丶特仑苏c_0

2019-06-02

写回答

1回答

风语

2019-06-02

有两种情况,

一种如果是静态注册,就直接按java类路径来找文件,比如java类是android/os/MessageQueue,native代码就是android_os_MessageQueue.cpp

如果是动态注册的话,就麻烦一点,framework里大部分是这种方式,可以在AndroidRuntime.cpp里面找看看这个模块的jni函数是哪里注册的,里面有个RegJNIRec数组。比如对binder,注册函数是register_android_os_Binder,然后全局搜这个函数的实现,就会发现在android_util_Binder.cpp里,一般native代码也会在这个文件里。

3
0

剖析Framework面试 冲击Android高级职位

一手助力冲刺Android高级职位,一手把握系统底层原理,理清面试思路,提升技术段位

1406 学习 · 187 问题

查看课程