Android修改开机默认时间为24小时制

Android修改开机默认时间为24小时制
*近在开发某利车载项目时,项目需求:需要将Android系统默认的12小时制修改为24小时制。

Android系统*次开机决定系统的时间格式的代码在frameworks层的SettingsProvider应用中。具体文件修改如下:
1、修改SettingProvider的配置文件(default.xml)
在frameworks\base\packages\SettingsProvider\res\values\defaults.xml文件中添加 一行 :

%title插图%num

其中,24表示时间格式是24小时,如果写成12就表示时间格式是12小时制的。

2、在DatabaseHelper.java中添加相应代码。
在frameworks\base\packages\SettingsProvider\src\com\android\providers\settings\DatabaseHelper.java
文件中找到loadSystemSettings()函数,在这个函数里添加一行,开机加载自定义的配置文件

%title插图%num
这样就将android系统的时间格式为12小时的改为时间格式为24小时的了。
需要注意,其中Settings.System.TIME_12_24定义在Settings.java文件中。其表示存在数据库当中的字段名称。如下图Setting数据库存在的表

%title插图%num
3、在Settings.java文件中新增数据库字段值
frameworks/base/core/java/android/provider/Settings.java

%title插图%num
4、验证效果
在framework/base目录下,编译生成framework.jar包;
在frameworks/base/packages/SettingsProvider,编译生成SettingsProvider.apk。
方法1 、替换上面生成的两个文件,主机之间恢复出厂设置,主机重启生效
方法2、替换上面生成的两个文件,并删除/data/data/com.android.providers.settings数据库文件,主机重启生效。