Android命令行/c语言/java设置获取系统属性的方法

来源:互联网 发布:安全联盟软件 编辑:程序博客网 时间:2024/06/05 17:13

Android命令行/c语言/java设置获取系统属性的方法

date: 2013.07.09; modification:2013.07.09

目录:

  • 1 命令行(shell) properties设置和获取接口
  • 2 c/c++语言 properties设置和获取接口
  • 3 Java语言 properties设置和获取的接口
  • 4 参考资料

Android提供了一套系统参数设置和获取的方法,这些参数可以在android系统中静态或动态的设定和获取。

1 命令行(shell) properties设置和获取接口

getprop “key”setprop "key" "value"

2 c/c++语言 properties设置和获取接口

代码定义在:

1
2
3
4
5
6
7
8
system/core/libcutils/properties.c
 
#define PROPERTY_KEY_MAX   32
#define PROPERTY_VALUE_MAX  92
 
intproperty_get(constchar *key, char*value, constchar *default_value);
intproperty_set(constchar *key, constchar *value);
intproperty_list(void(*propfn)(constchar *key, constchar *value, void*cookie), void*cookie);   

使用:

1
2
3
4
5
6
#include "cutils/properties.h"
 
charprop[PROPERTY_VALUE_MAX] = "000";
if(property_get("prop_name", prop, NULL) != 0) {
    ...
}

说明:

  • property_get返回值为get到的属性值的字符串长度.
  • prop_name为属性名.
  • prop为存放属性值字符串的地方.

3 Java语言 properties设置和获取的接口

frameworks/base/core/java/android/os/SystemProperties.java

1
2
3
4
5
6
7
8
9
publicstatic final int PROP_NAME_MAX = 31;
publicstatic final int PROP_VALUE_MAX = 91;
publicstatic String get(String key) ;
publicstatic String get(String key, String def) ;
publicstatic int getInt(String key, intdef) ;
publicstatic long getLong(String key, longdef) ;
publicstatic boolean getBoolean(String key, booleandef) ;
publicstatic void set(String key, String val) ;
publicstatic void addChangeCallback(Runnable callback) ;

4 参考资料

0 0
原创粉丝点击