[RK3288][Android6.0] SettingsProvider数据库小结

本文介绍了Android系统中输入法设置的实现方式,包括默认输入法、支持的输入法及默认输入法的语言选择等配置项的区别,并说明了这些设置在XML文件中的存储位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Platform: RK3288
OS: Android 6.0
Kernel: 3.10.92

数据库从db改成了xml的形式
/data/data/com.android.providers.settings/../settings.db --> /data/system/users/userid/settings_[system|global|secure].xml

global,secure,system三者区别:
Nested classes
class Settings.Global
Global system settings, containing preferences that always apply identically to all defined users.  
class Settings.Secure
Secure system settings, containing system preferences that applications can read but are not allowed to write. 
class Settings.System
System settings, containing miscellaneous system preferences. 

三个输入法相关设置的作用:
default_input_method
系统默认选择的输入法
enabled_input_methods
当前系统支持的输入法,会在setting应用的界面列出来
selected_input_method_subtype
默认输入法使用哪种语言,比如搜狗输入法是英文或者中文

针对输入法的修改可以直接在
/data/system/users/0/settings_secure.xml 中修改生效


数据库的处理文件是:

frameworks\base\packages\SettingsProvider\src\com\android\providers\settings\DatabaseHelper.java

参考
http://stackoverflow.com/questions/33071758/you-cannot-change-private-secure-settings-how-to-toggle-ringtone-vibration-i
https://github.com/android/platform_frameworks_base/commit/683914bfb13908bf380a25258cd45bcf43f13dc9
https://developer.android.com/reference/android/provider/Settings.html
http://blog.youkuaiyun.com/zhoumushui/article/details/40051331
https://github.com/android/platform_frameworks_base/commit/683914bfb13908bf380a25258cd45bcf43f13dc9

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值