android persist属性使用

persit属性

1. 设置前缀
在system\core\init\property_service.c中定义的前缀,并设置了权限

2. 添加一个property并加上默认属性:例如:silvan_liu

  路径:system/core/rootdir/int.rc

  在on post-fs-data 目录下

  setprop persist.sys.silvan_liu 1 //persist.sys 前缀名; 1为初始值
3. 如果属性名称以“persist.”开头,当设置这个属性时,其值也将写入/data/property

4. 属性使用
在c++中就是对应JAVA的两个函数就是property_set, property_get,其实JAVA是通过JNI调用这两个函数的
1)JAVA代码如下:
  import android.os.SystemProperties;

  SystemProperties.set("persist.sys.language", zone.getID());
  String lang= SystemProperties.get("persist.sys.language");
   
   boolean获取方法:

  boolean fastfoodenable = SystemProperties.getBoolean("persist.sys.fastfoodenable", false);

  boolean设置方法:

  SystemProperties.set("persist.sys.fastfoodenable", "true");
5. c代码调用
  #include <cutils/properties.h>
  property_set("persist.sys.language", "zh");
  property_get("persist.sys.language", propLang, "en");

  在adb shell可以通过以下的命名读取和修改

  #getprop  persist.sys.language
  #setprop  persist.sys.language zh

猜你喜欢

转载自sunj.iteye.com/blog/2405626