您的位置:首页 > 移动开发 > Android开发

Android 应用利用反射机制获取/设置系统属性值

2016-03-31 16:48 501 查看
使用adb shell 中的getprop 可以获取属性的值,但是在应用开发中因为systemproperties的hide属性,所以无法直接访问到get和set函数。

通过网上的教程可以通过反射机制来获取get和set函数,具体代码如下:

<span style="font-family:Microsoft YaHei;">/*
* method to setprop
* */

static public void setprop(String key, String defaultValue) {

String value = defaultValue;

try {

Class<?> c = Class.forName("android.os.SystemProperties");

Method get = c.getMethod("set", String.class, String.class );

get.invoke(c, key, value );

} catch (Exception e) {

e.printStackTrace();

}
}</span>
<span style="font-family:Microsoft YaHei;">/*
* method to getprop
* */

static public String getprop(String key, String defaultValue) {

String value = defaultValue;

try {

Class<?> c = Class.forName("android.os.SystemProperties");

Method get = c.getMethod("get", String.class, String.class );

value = (String)(get.invoke(c, key, "unknown" ));

} catch (Exception e) {

e.printStackTrace();

}finally {

return value;
}

}</span>


接下来看看反射机制。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: