Android修改ro.debuggable属性

日期 2016-05-28
Android修改ro.debuggable属性

首先得Root手机,改这个一般是为了方便调试应用,装有xposed框架的可以安装XInstaller模块达到通用的功能。

一般情况下ro(read-only还是runtime object呢?)是不可以改的。
像 /default.prop 是不能直接编辑的,即使修改了重启也会还原,必须解开boot.img修改才行。
而ro.debuggable又是在这里定义的,default.prop的读取在init进程中分配给property_init完成,并且如果其他进程要修改一些属性,都会向init进程发送请求,最终由init进程修改。
而且根据代码
https://android.googlesource.com/platform/system/core/+/android-6.0.1_r26/init/property_service.cpp#221

static int property_set_impl(const char* name, const char* value) {
//...
/* ro.* properties may NEVER be modified once set */
if(!strncmp(name, "ro.", 3)) return -1;
//...
}

发现ro. 开头是属性不可修改。
有大神提供了一个