在Android中,许多的系统属性都在settings应用当中进行设置的,比如wifi、蓝牙状态,当前本机语言,屏幕亮度等等一些相关的系统属性值。这些数据主要是存储在数据库中,对应的URI为:content://settings/system和content://settings/secure,这两个是主要的,目前也只是涉及到这两个数据库表的使用。

<1> 获取和设置一些系统属性,通过一系列的get/set方法

当需要获得当前wifi状态的值,调用已封装的方法如下:

Settings.Secure.getInt(getContentResolver() , Settings.Secure.WIFI_ON);

当需要获得当前时间日期自动获取,调用如下:

Settings.System.getInt(getContentResolver() , “auto_time”);

修改也是调用对应的setInt方法。

注意:这里修改settings的系统属性值需要有相关的权限。如修改wifi状态需要有android.permission.WRITE_SETTINGS权限,权限问题只要参考sdk下的描述就可以。还有其他属性等等

<2>添加自定义的属性(好处是在缓存中不会被清除)

需要系统app权限 需要加 :

android:sharedUserId="android.uid.system""android.permission.WRITE_SECURE_SETTINGS" />

还需要用系统签名打包

使用:

Settings.Secure.putInt(context.getContentResolver(), key, value);Settings.Secure.getInt(appContext.getContentResolver(), value);

更多相关文章

  1. 如何为一个组件的同一属性同时声明两个值
  2. Android中系统自带数据库文件中的多表联合查询疑问
  3. Android(安卓)横竖屏切换时不销毁当前activity 和 锁定屏幕
  4. 解Android系统的进程间通信原理(二)----RPC机制
  5. Android系统设计中存在设计模式分析
  6. android图形系统详解二:Drawables
  7. 基于Android(安卓)5.1系统的nfc读卡驱动和上层的调试记录,nfc移植
  8. Android(安卓)View视图系统分析和Scroller和OverScroller分析
  9. Android系统布局——android.R.layout详解

随机推荐

  1. android cts测试失败项以及原因
  2. android 用到的技巧集
  3. Android(安卓)- LayoutInflater 的使用
  4. Android弹球小游戏
  5. android 用到的技巧集
  6. android 学习笔记10——XML解析
  7. Android之SurfaceView、Camera
  8. android 监听电源键
  9. Android签到功能的实现
  10. android studio 错误总结