给android添加系统属性:和SystemProperties

时间:2025-01-27 14:23:24

JAVA代码如下:

import android.;

("", ());
String lang= ("");

获取方法:

boolean fastfoodenable = ("", false);

设置方法:

("", "true");
  

C

#include <cutils/>

property_set("", "zh");
property_get("", propLang, "en");

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

#getprop 
#setprop     zh

 

创建与修改android属性用(name, value),获取android属性用(name),需要注意的是android属性的名称是有一定的格式要求的,如下: 前缀必须用system\core\init\property_service.c中定义的前缀 ,进行系统属性设置的程序也必须有system或root权限

如果我们要添加一个property:例如:silvan_liu

路径:system/core/rootdir/

在on post-fs-data 目录下

 setprop .silvan_liu 1// 前缀名; 1为初始值

PS:不同前缀名权限不同,这里就不一一说明;还有为什么要加载on post-fs-data目录下,这和的语法有关

 

 

 

2 使用  

这种方式会保存变量到Settings 数据库中,飞行模式等的开关就是用这种方式实现的。

首先需要定义一个系统属性值

路径:frameworks/base/core/java/android/provider/

public static final String VIVIEN_FASTFOOD= "hungry";  

1)获取方法如下:

@Override

    public void onResume()

    {

      super.onResume();

      if(.getInt(getContentResolver(), .VIVIEN_FASTFOOD,0)==1)

       {

      (true);

       }

      else

      (false);

    }
2)设置

if (()) {

              .putInt(getContentResolver(),

                     .VIVIEN_FASTFOOD, 1);

           } else {

              .putInt(getContentResolver(),

                     .VIVIEN_FASTFOOD, 0);

           }

 

需要import ;