在上一篇 Android Studio 在线调试Framework代码
有讲到使用 Android Studio , 可以很方便的调试 Framework下的代码
。
有的时候,我们需要添加一个修改验证,需要通过系统编译或者 仅编译 framework 部分。
编译就需要挺长时间,并且刷机时间也长。
我们能不能,只编译一次,验证多个修改方案?
在一般情况下, 是可以的!!
通过添加一个系统属性值, 然后使用 adb 命令动态设置,则可以完成!
1. 导入 SystemProperties包
import android.os.SystemProperties;
2. 读取属性值
可以自定一个 系统属性值, 例如 persist.sys.mytestcase.onlydebug,
String onlydebug = SystemProperties.get("persist.sys.mytestcase.onlydebug", "false");
Log.d(TAG, "onlydebug="+onlydebug);
if("true".equals(onlydebug)){
//....
}
然后,根据它的值作为条件,去执行你的方案。
我们在这里的值是 String 类型, 因此你可以 设定为 任何一段 字符。
3. adb 设置
adb 命令设置 或者 获取
(1) 设置:
adb shell setprop persist.sys.mytestcase.onlydebug true
(2) 获取:
adb shell getprop persist.sys.mytestcase.onlydebug
在设置了值后,便可以按计划执行你添加的修改代码。
当然,也可以重置值,达到执行原有逻辑的效果!
网友评论