android 设置(Settings)常见修改记录

Settings设置

packages/apps/Settings

framework/base/packages/SettingsLib

framework/base/packages/SettingsProvider

1.Settings常见页面对应文件以及布局

android 设置(Settings)常见修改记录

AndroidM:

packages/apps/Settings/res/xml/dashboard_categories.xml

每个选项的点击事件在上面的xml文件中,可以去看。

AndroidN:

没有dashboard_categories.xml了。

WLANWifiSettings.java

蓝牙:BluetoothSettings.java

SIM卡:SimSettings.java

流量使用情况:DataUsageSummary.java

更多:WirelessSettings.java

显示:DisplaySettings.java

智能唤醒:SmartWakeActivity.java

提示音和通知:NotificationSettings.java

应用:ManageApplications.java

存储:StorageSettings.java

电池:PowerUsageSummary.java

内存:ProcessStatsSummary.java

位置信息:LocationSettings.java

安全:SecuritySettings.java

账户:AccountSettings.java

语言和输入法:InputMethodAndLanguageSettings.java

Google

备份和重置:PrivacySettings.java

日期和时间:DateTimeSettings.java

定时开关机:<intentandroid:action="com.android.settings.SCHEDULE_POWER_ON_OFF_SETTING"/>

无障碍:AccessibilitySettings.java

打印:PrintSettingsFragment.java

开发者选项:DevelopmentSettings.java

关于手机:DeviceInfoSettings.java

2.Settings中部分子页面对应

settings/security/app-permissions/vendor/mediatek/proprietary/packages/apps/PermissionControl

settings/security/anti-theft/vendor/mediatek/proprietary/packages/apps/PrivacyProtectionLock

settings/security/dataprotection/vendor/mediatek/proprietary/packages/apps/DataProtection

settings/Display/Fontsize:

packages/apps/Settings/res/values/arrays.xml

<string-arrayname="entryvalues_font_size" translatable="false">

<item>0.85</item>

<item>0.99</item>

<item>1.0</item>

<item>1.02</item>

</string-array>

分别对应字体小,正常,大,超大。

3.Settings各个子页面的各种选项默认值

存储的默认值有三个位置

alps/frameworks/base/packages/settingsprovider/res/valuse/Defaults.xml

alps/frameworks/base/core/res/res/values/config.xml

xxx.mk文件中配置的宏控预设了值。

第一次开机读取上述值的代码位置

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

DatabaseHelper中涉及到的大量常量值定义位置

alps/frameworks/base/core/java/android/provider/Settings.java

Settings.java定义内部类。内部类定义了很多常量

例如:Settings.System.HAPTIC_FEEDBACK_ENABLED

Settings.Global.CHARGING_SOUNDS_ENABLED

简单的例子

拨号键盘提示音:<boolname="def_dtmf_tones_enabled">true</bool>

屏幕锁定提示音:<integername="def_lockscreen_sounds_enabled">1</integer>

触摸提示音:<boolname="def_sound_effects_enabled">true</bool>

点按时振动:<boolname="def_haptic_feedback">true</bool>

现在是默认开启的,如果要改为默认关闭。true改为false,1改为0.