SuperIC社区_

标题: android系统属性 [打印本页]

作者: Alanz    时间: 2016-9-28 15:16
标题: android系统属性
property_service.c其源码在system\core\init目录下,如果做需求开发,使用别人写的属性总是担心系统其他地方有没有调用这个属性,与其这样不如自己定义前缀搞独立,想怎么调用就怎么调用,逍遥自在。
首先在system/core/jni/property_service.c定义前缀,
在这个C文件中有 property_perms[] = {
    { "net.rmnet0.",      AID_RADIO,    0 },
    { "net.gprs.",        AID_RADIO,    0 },
    { "net.ppp",          AID_RADIO,    0 },
    { "net.qmi",          AID_RADIO,    0 },
    { "net.lte",          AID_RADIO,    0 },
    { "net.cdma",         AID_RADIO,    0 },
    { "ril.",             AID_RADIO,    0 },
    { "gsm.",             AID_RADIO,    0 },
    { "persist.radio",    AID_RADIO,    0 },
    { "net.dns",          AID_RADIO,    0 },
    { "sys.usb.config",   AID_RADIO,    0 },
    { "net.",             AID_SYSTEM,   0 },
    { "dev.",             AID_SYSTEM,   0 },
    { "runtime.",         AID_SYSTEM,   0 },
    { "hw.",              AID_SYSTEM,   0 },
    { "sys.",             AID_SYSTEM,   0 },
    { "sys.powerctl",     AID_SHELL,    0 },
    { "service.",         AID_SYSTEM,   0 },
    { "wlan.",            AID_SYSTEM,   0 },
    { "bluetooth.",       AID_BLUETOOTH,   0 },
    { "dhcp.",            AID_SYSTEM,   0 },
    { "dhcp.",            AID_DHCP,     0 },
};
我们先定义一个有个性的前缀把,比如 xiyangyang,既然是系统属性就给他AID_SYSTEM吧,
property_perms[] = {
   。。。。。。。。
    { "dhcp.",            AID_DHCP,     0 },

  {"xiyangyang.",AID_SYSTEM,0}
};
然后调用时,就直接SystemProperties.set("xiyangyang.huitailang",1);SystemProperties.getInt("xiyangyang.huitailang",0);反正系统属性跟随系统的生命周期,重启就清零回归本源,所以一些临时数据上的处理就直接这样调用会省很多事

作者: Robby.zou    时间: 2016-9-28 22:47





欢迎光临 SuperIC社区_ (/) Powered by Discuz! X3.3