系统属性获取及设置中的设置值

data/data/com.android.providers.settings/databases/settings.db

1.系统属性获取及设置

android.os.SystemProperties文件

android.os.Build文件

可以取得系统版本等信息。

类似adb shell : getprop看到的值

2.设置中的设置值

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

  接下来,就了解下settings应用中是如何对系统属性进行设置的。

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

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

  修改wifi状态只需要调用对应的setInt方法就可以实现。

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

  Settings.System.getInt(getContentResolver() , "auto_time");

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

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

  其实在settings应用中所获取或者修改属性都是调用了framework中android.provider.settings的 Settings类对应的方法,也就是说真正有跟数据库打交道的是在provider中,这里也体现了ContentProvider的用途。

  就大体说下android.provider.settings.Settings这个类吧。Settings里面创建了包含System和 Secure在内的几个内部类,每个内部类都对应了一张数据库表,也就是继承自BaseColumns类,System和Secure类分别对应着 system和secure数据库表。

  对于上面通过getInt获得的字段,其实是在初始获得数据库数值的时候,首先是有getString方法将数据库数据保留,然后在integer.parseInt将数据转换成int类型。这就是settings读取和保留数据的基本原理。

ref:

Android系统设置— android.provider.Settings
https://www.cnblogs.com/bluestorm/p/3665596.html

android系统属性获取及设置相关推荐

  1. Android 系统属性读取和设置详解

    Android 系统属性读取和设置详解 一.在adb中进行属性读取和设置 1.Settings Provider设置和读取 获取 设置 2.SystemProperties属性读取和设置 二.Andr ...

  2. 使用Java代码在应用层获取Android系统属性

    之前使用Native代码的property_get()/property_set()来获取Android系统属性,现在需要改写到Java上面, 但是System.getProperty() / Sys ...

  3. Android 系统(94)---android系统属性(ro.com.google.clientidbase.ms)随卡适配

    android系统属性(ro.com.google.clientidbase.ms)随卡适配 客户要求 客户提了一个小需求,就是要将系统属性(ro.com.google.clientidbase.ms ...

  4. android 获取权限管理,Android常用权限获取和设置

    Android常用权限获取和设置 1 活动管理器 权限 代码 ActivityManager activityManager = (ActivityManager) getSystemService( ...

  5. Android系统定位获取经纬度

    Android系统定位获取经纬度 直接上代码 public class LocaltionUtil {private double latitude = 0.0;private double long ...

  6. Android : 反射机制获取或设置系统属性(SystemProperties)

    Android.os.SystemProperties 提供了获取和设置系统属性的方法,但是这个类被隐藏了,应用开发时无法直接访问,可以通过反射的机制进行操作. 获取系统属性 public stati ...

  7. adb获取Android系统属性(adb shell getprop ***)数据来源

    在Android系统中,它的根文件系统下有几个用于启动系统时需要的配置文件: /init.rc /default.prop /system/build.prop 通常我们可以通过命令getprop获取 ...

  8. Java反射获取Android系统属性值

    目录 反射定义 为何需要反射 反射方法Method getDeclaredMethod方法 getMethod方法 参数解释 invoke方法 Android 反射应用 反射定义 "反射&q ...

  9. android 系统属性 或 自定义属性

    添加全局变量开关(三种方式) 1.  android.provider.Settings.System.getInt(getContentResolver(),"test", 0) ...

最新文章

  1. 【工具】git笔记(一)
  2. java xfire下载_XFIRE教程 PDF 下载
  3. 二值化图像去除小黑点_python与图像工程(2020.10.11)
  4. 保驾护航金三银四,妈妈再也不用担心我找工作了!
  5. php去掉空格函数 防止注入,PHP_去除php注释和去除空格函数分享,虽然php5中已有php_strip_whitespace - phpStudy...
  6. netty java_GitHub - leihuazhe/Java11-Netty-Demo: 基于Java11 构建的 netty 服务端客户端 模块化例子...
  7. 今天学得有点多——end用法
  8. MultiDock——专门为 macOS 设计的增强型 Dock
  9. android制作图矢量图的工具,矢量图形绘图工具——PaintCode
  10. 刨根究底字符编码之十——Unicode字符集的编码方式以及码点、码元
  11. Blue Coat 拓展安全行业最大的加密流量管理协作组织
  12. AMap(高德官方图层)
  13. TI毫米波雷达开发中软件版本的说明
  14. 中断工作原理在现代计算机中的应用,中断、DMA、通道
  15. HP笔记本HDMI检测不到外接显示器
  16. 2019python程序员月薪多少_最新 | 2019年Python工程师的平均薪资是多少?
  17. PostgreSQL 技术文档
  18. 地下交通站之贾贵经典语录
  19. 希腊复兴的奠基礼-纳瓦里诺海战
  20. 基于图像的虚拟换装:Towards Photo-Realistic Virtual Try-On by Adaptively Generating-Preserving Image Content

热门文章

  1. Reverse String
  2. [转]手游研发数据专业术语科普 游戏热度跟啥有关
  3. 未安装在此服务器场中,无法添加到该范围
  4. 网卡故障:弹出界面eth0: 错误:没有找到合适的设备:没有找到可用于链接System eth0 的
  5. php命名空间 动态 new,PHP命名空间(namespace)的动态访问及使用技巧_php实例
  6. f分布表完整图a=0.05_MySQL8.0新特性-invisible indexes
  7. UVA11624大火蔓延的迷宫
  8. C语言经典例100-将学生成绩写入文件
  9. Qt 5 打包成一个单文件方法,可以在其他电脑运行(附资源)
  10. 【Groovy】Groovy 扩展方法 ( 静态扩展方法配置 | 扩展方法示例 | 编译静态扩展类 | 打包静态扩展类字节码到 jar 包中 | 测试使用 Thread 静态扩展类 )