C/C++
system/core/libcutils/properties.c
#include <cutils/properties.h>
#define PROPERTY_KEY_MAX 32
#define PROPERTY_VALUE_MAX 92
char *value= new char[PROPERTY_VALUE_MAX];
使用:char facingValue[PROPERTY_VALUE_MAX] = {0};
返回值为字符长度
int property_get(const char *key, char *value, const char *default_value);
int property_set(const char *key, const char *value);
int property_list(void (*propfn)(const char *key, const char *value, void *cookie), void *cookie);
JAVA
public static boolean 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);
return true;
} catch (Exception e) {
e.printStackTrace();
}
return false;
}
public static 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, defaultValue));
} catch (Exception e) {
e.printStackTrace();
}
return value;
}