AOSP之修改Native层代码

native层的定制,通常是为了知足framework层代码的调用需求,Native层分为两部分,JNI和native。JNI层是native层C/C++与framework层java交互的桥梁。java

  • 在打印日志TAG="hpp"的时候,在JNI层和native层分别修改Log的输出结果。

JNI层修改Log的输出结果

一、查找android_util_Log.cpp文件android

二、查找android_util_Log_println_native方法bash

三、加入下面代码spa

if (strcmp(tag, "hpp")) {
   msg = "JNI changed";
} 复制代码

四、进入android_util_Log.cpp目录日志

godir android_util_Log.cpp复制代码

五、执行mmcode

六、输出get

Install: out/target/product/generic/system/lib/libandroid_runtime.so复制代码

七、将文件push到手机
string

adb push $(gettop)/out/target/product/generic/system/lib/libandroid_runtime.so /system/lib/复制代码

八、重启系统it

stop;start复制代码

native层修改Log的输出结果

一、查找logd_write.c文件class

二、查找__android_log_buf_write方法

三、加入下面代码

if (strcmp(tag, "hpp")) {
   msg = "Native changed";
} 复制代码

四、进入logd_write.c目录

godir logd_write.c复制代码

五、执行mm


https://www.365yg.com/i6436857259367596545/#mid=1565254704995330

相关文章
相关标签/搜索