本文将带你了解Android应用开发之反射机制获取或设置系统属性(SystemProperties)实例教程,希望本文对大家学Android有所帮助
Android.os.SystemProperties 提供了获取和设置系统属性的方法,但是这个类被隐藏了,应用开发时无法直接访问,可以通过反射的机制进行操作。
获取系统属性
public static public String getProperty(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; }}
设置系统属性
public static void setProperty(String key, String value) { try { Class c = Class.forName("android.os.SystemProperties"); Method set = c.getMethod("set", String.class, String.class); set.invoke(c, key, value ); } catch (Exception e) { e.printStackTrace(); } }
示例
获取系统版本号(非Android版本)
getProperty("ro.build.display.id", "unknown");
通过 adb shell 打印系统属性的 key
打开系统的命令行工具(开始中输入cmd)输入adb shell进入 adb shell输入cd system进入 system 目录
输入cat build.prop查看所有系统属性
输入cat build.prop | grep [指定字符串]查看所有包含指定字符串的项
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之Android频道!