Android源码GlobalAction设置中,要用到一些全局标志或者说变量,这时候要给android系统添加自己想要的属性。

1.Settings.Global.putInt()

Settings.Global.putInt(mContext.getContentResolver(),Settings.Global.AIRPLANE_MODE_ON, 1);//1:开启飞行模式,0:关闭飞行模式

需求:添加LOW_POWER_TEST系统属性

Settings.Global.putInt(mContext.getContentResolver(),Settings.Global.LOW_POWER_TEST, 1);

2.添加

<1>在frameworks/base/core/java/android/provider/Settings.java定义系统属性名:LOW_POWER_TEST,

public static final class Global extends NameValueTable {

/*** Whether Airplane Mode is on.*/
        public static final String AIRPLANE_MODE_ON = "airplane_mode_on";
        public static final String AIRPLANE_MODE_CHANGED = "airplane_mode_changed";

//add
         public static final String LOW_POWER_TEST = "low_power_test";

}

<2>系统启动加载这个属性

static {

// these are moving directly from system to global
            MOVED_TO_GLOBAL.add(Settings.Global.AIRPLANE_MODE_ON);

//add

MOVED_TO_GLOBAL.add(Settings.Global.LOW_POWER_TEST);

}

<3>SystemProperties

android的系统属性设置最终的调用流程在java层:Systemproperties.set(name, value)  和Systemproperties.set(name, value)

调用jni代码:property_set()和property_get() ----->system/core/init/property_service.c调用:property_set()和__property_get()

添加系统属性设置的程序,也必须有system或root权限,添加路径:system/core/rootdir/init.rc

在on post-fs-data 下添加:

setprop persist.sys.low_power_test 1 //persist.sys前缀名, 1为初始值

<4>编译android源码后

#adb shell

#getprop //就可以看到下面属性,说明设置成功

[persist.sys.low_power_test]: [1]

使用新加系统属性设置

Settings.Global.putInt(mContext.getContentResolver(),Settings.Global.LOW_POWER_TEST, 1 );//设置LOW_POWER_TEST属性为1

Settings.Global.getInt(mContext.getContentResolver(),Settings.Global.LOW_POWER_TEST, 0) ;//获取LOW_POWER_TEST属性状态

Android4.4 添加系统属性相关推荐

  1. 怎么在Android系统中增加系统属性?

    系统属性:就是在整个Android系统中都是可以调用的属性,比如我们某个功能,在fw层和c层都有改动,我们需要用一个变量去控制这个功能是否启用和关闭,这就需要用到全局的系统属性: /system/bu ...

  2. ios给系统添加分类管理属性

    ios给系统添加分类管理属性 swift 测试 import UIKit import ObjectiveCstruct MDTableConst{static let associatedKey = ...

  3. java 反射 systemproperties,Android添加自己的系统属性(反射调用SystemProperties)

    我们可以通过调用SystemProperties.java类设置和获取系统的属性,但是这个类目前是hide的.也就是我们在开发的时候想直接调用时不可以的.除非你是在系统层上面的开发. 这里通过Andr ...

  4. Android 使用反射机制获取或设置系统属性(SystemProperties)

    网上有很多介绍,但是感觉比较混乱!由于自己能力有限,只做一些简单易懂的介绍. 一.获取和设置SystemProperties属性的代码 下面是通过反射来获取和设置系统属性的代码 public fina ...

  5. Confluence 6 配置系统属性

    2019独角兽企业重金招聘Python工程师标准>>> 在这个页面中描述 Confluence 启动时如何设置 Java 属性和其他选项. 请查看 How to fix out of ...

  6. WPF整理-为User Control添加依赖属性

    WPF整理-为User Control添加依赖属性 原文:WPF整理-为User Control添加依赖属性 依赖属性 ".NET properties are nothing more t ...

  7. jdk 安全属性_系统属性的JDK 12 Javadoc标记

    jdk 安全属性 JDK 12 Early Access Build 20 ( 2018/11/15 )可用,可以用来试用新的Javadoc标签{@systemProperty} . 新的{@syst ...

  8. 系统属性的JDK 12 Javadoc标记

    JDK 12 Early Access Build 20 ( 2018/11/15 )可用,可以用来试用新的Javadoc标签{@systemProperty} . 新的{@systemPropert ...

  9. 计算机管理中添加用户属性,如何在计算机右键菜单栏中添加属性选项

    如何在计算机右键菜单栏中添加属性选项 电脑是现在最常用的工具之一,有些用户想知道如何在计算机右键菜单栏中添加属性选项,接下来小编小编就给大家介绍一下具体的操作步骤. 具体如下: 1. 首先第一步按下[ ...

最新文章

  1. Transforms CTM, 转换矩阵
  2. jQueryEasyUI 的入门
  3. 20172310 2017-2018-2 《程序设计与数据结构》第十一周学习总结
  4. 使用Apriori算法进行关联分析
  5. Cocos2D-X2.2.3学习笔记5(UI系统)
  6. mysql镜像压缩包使用_如何连接docker的mysql镜像
  7. 自动采集壁纸的微信小程序
  8. Mybatis自学日志04(日志工厂)
  9. [编织消息框架][优化系统]突破连接上限(上)
  10. Linux时间子系统之(五):POSIX Clock
  11. 试题14 回文数(详解)
  12. C++Builder2010创建线程
  13. CentOS 6.3_Nagios安装笔记
  14. 链路聚合的配置(思科)
  15. 码力十足学量化|如何获取指数成分股及权重数据
  16. 如何让html 兼容IE和chrome,chrome兼容模式如何切换成IE兼容模式_chrome兼容模式切换成IE兼容模式的方法-系统城...
  17. 今日头条 ANR 优化实践系列 - Barrier 导致主线程假死
  18. 中龙电力什么理财产品预期收益高又安全?介绍四类理财产品
  19. php手册经常见到,什么是“二进制安全”?
  20. 手写基于redis实现分布式限流器-pdlr

热门文章

  1. sql 通过游标 拆分xml结构
  2. python start
  3. Flex 国际化使用
  4. 谷歌开源 VR 应用
  5. Node.js Web开发框架
  6. 【Nokov】关于动捕系统获取刚体姿态的说明
  7. html5 viewpor,FileViewPro
  8. IP地址 0.0.0.0 是什么意思?
  9. 向Spark集群提交任务
  10. ZigBee开发(1)--开发环境搭建