Android系统的很多默认选项和配置都是保存在SettingsProvider的配置文件下的,如果我们想要获取当前系统中某个选项对应的配置参数以及参数对应的值,这样就可以去修改系统固件,将配置固化到系统里面。下面介绍获取SettingsProvider的默认参数的方法。
在android6.0以及之后的系统版本中,获取SettingsProvider的默认参数,可以通过adb将/data/system/users/0文件夹下的文件pull出来。SettingsProvider中的global参数存放在settings_global.xml,secure参数存放在settings_secure.xml,system参数存放在settings_system.xml。打开xml文件就可以查看到SettingsProvider的参数以及对于的值了。
在android12之后的系统中,data/system/users/0目录下的settings_global.xml,settings_secure.xml,settings_system.xml这些文件打开查看到的是乱码。这个时候我们需要换另外一种方式,就是adb shell settings命令。
adb shell settings list system----获取system参数的参数名称和值
adb shell settings list secure----获取secure参数的参数名称和值
adb shell settings list global----获取global参数的参数名称和值
如果你知道某个SettingsProvider的默认参数名称,可以直接adb shell settings get命令进行获取。如获取背光的默认参数值:
adb shell settings get system screen_brightness
另外还可以通过adb shell settings put 来设置默认参数的值。如设置系统亮度为200:adb shell settings put system brightness 200