精华内容
下载资源
问答
  • Android源码编译时,默认的时间制式是12小时,通过修改代码可以将其改为24小时制。 2. 分析 进入Settings源码找到设置时间制式的地方,路径为:packages/apps/Settings/src/...

    1. 前言

    Android源码编译时,默认的时间制式是12小时,通过修改代码可以将其改为24小时制。

    2. 分析

    进入Settings源码找到设置时间制式的地方,路径为:packages/apps/Settings/src/com/android/settings/DateTimeSettings.java
    最后调用set24Hour(boolean is24Hour)来设置时间制式,代码如下:

        private void set24Hour(boolean is24Hour) {
        Settings.System.putString(getContentResolver(),
                Settings.System.TIME_12_24,
                is24Hour? HOURS_24 : HOURS_12);
    }
    

    可以看到,其实就是设置到xml文件里面,这儿注意一下Settings.System.putString是设置的String型数据,后面的修改要按照String类型添加。

    再通过搜索framework中,TIME_12_24对应的就是./framework/base/core/java/android/provider/Settings.java文件中定义的public static final String TIME_12_24 = "time_12_24";

    但是./framework/base/packages/SettingsProvider/res/values/defaults.xml中并未定义time_12_24变量,因此需要我们添加一下这个变量,并且在./base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java中重新load一下即可。

    3. 修改方法

    打开./framework/base/packages/SettingsProvider/res/values/defaults.xml文件,添加如下代码:

    <string name="time_12_24">24</string>
    

    打开./base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java文件,在loadSystemSettings(SQLiteDatabase db)方法中添加如下代码:

     loadStringSetting(stmt, Settings.System.TIME_12_24,
             R.string.time_12_24);
    

    执行完上面的修改后,重新编译即可。

    4. 备注

    要注意按照String方法添加xml代码及java代码,具体原因按在步骤2中有列举:Settings.System.putString()设置的是String类型数据。

    展开全文
  • 由于业务需求,需要将系统时间12小时制改为24小时制。 首先,我们通过setting中设置时间格式的文字信息找到这个设置项所在资源文件位置,packages/apps/Settings/res/xml/data_time_prefs.xml, &amp;lt;...

    由于业务需求,需要将系统时间12小时制改为24小时制。
    首先,我们通过setting中设置时间格式的文字信息找到这个设置项所在资源文件位置,packages/apps/Settings/res/xml/data_time_prefs.xml,

    <SwitchPreference android:key="24 hour"
    	android:title="@string/data_time_24hour"/>
    

    找到这个资源文件是在packages/apps/Settings/src/com/android/settings/DataTimeSettings.java用到,然后通过key值

    mTime24Pref = findPreference("24 hour);
    (SwitchPreference )mTime24Pref .setChecked(is24Hour());
    
    private boolean is24Hour(){
    	return DateFormat.is24HourFormat(getActivity());
    }
    

    可以看到获取的是DateFormat中的一个方法的返回值,在frameworks/base/core/java/android/text/format/DateFormat.java中,

    public static boolean is24HourFormat(Context context,int userHandle){
    	String value = Settings.System.getStringForUser(context.getContentResolver(),Settings.System.TIME_12_24,userHandle);
    	...
    }
    

    好了,可以看到最终获取的是一个系统属性值。现在我们来修改
    1.在defaults.xml中添加相应代码
    在frameworks\base\packages\SettingsProvider\res\values\defaults.xml文件中添加 一行

     <string name="def_time_12_24">24</string>
    

    24表示格式为24小时制,系统默认为12小时制

    2.在DatabaseHelper.java中添加相应代码
    在frameworks\base\packages\SettingsProvider\src\com\android\providers\settings\DatabaseHelper.java
    文件中找到loadSystemSettings()函数,在这个函数里添加一行

     loadStringSetting(stmt, Settings.System.TIME_12_24,R.string.def_time_12_24);
    

    重新编译

    展开全文
  • Android默认配置24小时制修改

    千次阅读 2018-01-22 10:15:33
    Android系统默认是12小时制度的,我们将它修改24小时制度 第一步.先修改默认配置文件  vim frameworks/base/packages/SettingsProvider/res/values/defaults.xml   随便找一行添加  24   这里...

    Android系统默认是12小时制度的,我们将它修改为24小时制度

    第一步.先修改默认配置文件

        vim frameworks/base/packages/SettingsProvider/res/values/defaults.xml 

        随便找一行添加

        <string name="time_12_24">24</string>  

        这里的time_12_24字符串是在同目录下Settings.java中定义的。

    第二步.修改Android数据库加载的方法

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

        找到private void loadSystemSettings(SQLiteDatabase db)  方法,在该方法中添加一句

        loadStringSetting(stmt, Settings.System.TIME_12_24, R.string.time_12_24);

        重新编译。 OK


       顺便说一下,android数据库中的load字段的方法是类型对应的,例如我们time_12_24在defaults.xml中定义的是

    <string name="time_12_24">24</string>  ,这是一个string,就必须调用loadStringSetting,如果用loadIntSetting的话就加载不到了,显然24和"24"对java来说是一样可以强转的。其他类型也一样,需要一一对应

    展开全文
  • 修改默认时区 在最终编译出的配置文件build.prop增加属性 persist.sys.timezone=Asia/Shanghai (我这里默认选择东八区上海,其他对应的时区在frameworks\base\core\res\res\xml\time_zones_by_country.xml进行查找...

    修改默认时区

    在最终编译出的配置文件build.prop增加属性
    persist.sys.timezone=Asia/Shanghai (我这里默认选择东八区上海,其他对应的时区在frameworks\base\core\res\res\xml\time_zones_by_country.xml进行查找)
    修改build.prop参照https://blog.csdn.net/pq5357/article/details/80342164修改生成脚本
    增加

    echo "persist.sys.timezone=Asia/Shanghai"

    即可

    修改小时制

    在frameworks/base/packages/SettingsProvider/res/values/defaults.xml 最后添加

    <string name="time_12_24">24</string>

    在frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
    找到loadIntegerSetting(stmt, Settings.System.POINTER_SPEED, R.integer.def_pointer_speed);
    在后面添加

    loadStringSetting(stmt, Settings.System.TIME_12_24, R.string.time_12_24);
    展开全文
  • Android修改开机默认时间为24小时制 最近在开发某利车载项目时,项目需求:需要将Android系统默认的12小时制修改24小时制。 Android系统第一次开机决定系统的时间格式的代码在frameworks层的SettingsProvider应用...
  • eclipse注释模板修改时间为24小时制

    千次阅读 2019-09-11 18:19:30
    在eclipse注释模板中,...此时在注释中显示的时间是12小时制,如果要改成24小时制,可以采用如下方案: @date ${currentDate:date('YYYY-MM-dd HH:mm:ss')} 这时候我们的日期就变成24小时制啦,如下所示: ...
  • Centos修改时间为24小时制

    千次阅读 2018-07-31 16:21:31
    终端输入命令:tzselect 根据提示选择: 5 --&gt; 9--&gt;1--&gt;1--&gt;ok rm /etc/localtime ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime   文章转载于:...
  • 如何修改默认时间格式?24小时制

    千次阅读 2015-09-02 16:19:22
    1. 修改文件alps\frameworks\base\packages\SettingsProvider\res\...红色标记表示24小时制,也可以改为12(12小时制) 2. 修改文件alps\frameworks\base\packages\SettingsProvider\src\com\android\providers\setti
  • Android系统修改时间格式为24小时制

    千次阅读 2015-08-15 12:25:03
    1. frameworks/base/packages/SettingsProvider/res/values/defaults.... 增加12 //24小时制的话改为24即可   2. frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.
  • android系统第一次开机决定系统的时间格式的代码在frameworks层的SettingsProvider应用中。 1.在defaults.xml中添加相应代码。 在frameworks\base\packages\SettingsProvider\...string name="def_time_12_24" tran...
  • Android 修改系统默认时间为24小时制

    千次阅读 2016-09-03 10:42:36
    1. 修改文件 alps\frameworks\base\packages\SettingsProvider\res\values\...红色标记表示 24 小时制,也可以改为 12 ( 12 小时制) 2. 修改文件 alps\frameworks\base\packages\SettingsProvider\src\com\
  • 学习Qt之初参照网上资料,然后稍加修改的时钟界面,界面包含了时钟、数字时钟、12小时制和24小时制相互切换并且可以修改系统时间。 以下代码为时钟部分: clock.h #include &lt;QWidget&gt; #include...
  • linux 修改时区 改为24小时制

    千次阅读 2017-11-15 19:55:00
    这个文件没有得新加上去 1 2 3 4 [root@s56zabbix_agentd.d]#cat/etc/sysconfig/clock ZONE="Asian/Shanghai" UTC=false [root@s56zabbix_agentd.d]# 1 ...cp/etc/l...
  • 下面是解决的方法 tzselect 根据提示选择 5 –&gt; 9–&gt;1–&gt;1–&gt;ok 然后执行下面这两条命令 ...ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime ...亲测有效...
  • 有些代码按了复制键没有效果,但是其实已经...原文地址:SimpleDateFormat 12小时制以及24小时制的写法 去代码package com.test; import java.text.ParseException; import java.text.SimpleDateFormat; import ja
  • 1)将原有的localtime文件移走; sudo mv /etc/localtime /etc/localtime-old 2)做新的localtime文件,将对应的时区文件链接过来 sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
  • 时间12小时制转24小时制

    千次阅读 2016-05-26 17:01:58
    $a = '2016-05-10 7:37:00 pm'; echo date('Y-m-d H:i:s',strtotime($a)); ?>注解:H:i:s是24小时制,h:i:s是12小时制,注意区分大小写
  • SimpleDateFormat设置24小时制

    千次阅读 2014-07-15 09:51:25
    SimpleDateFormat格式设置24小时制时,HH代表24小时制,hh代表12小时制 以前居然没有发现!!!
  • mysql在centos下改24小时制

    千次阅读 2018-10-14 18:57:22
    所以当你的系统是12小时制的时候就会出现它也是12小时制的 所以我们需要将centos的时间格式改为24小时 这里就需要用到tzselect tzselect // 然后依次 5 --&gt; 9--&gt;1--&gt;1--&gt;ok rm /etc/...
  • NSDateFormatter之24小时制探究

    千次阅读 2014-11-10 17:44:31
    NSDateFormatter之24小时制探究 24小时制显示 自定义时间格式中,"HH"代表24小时制, "hh"代表12小时制,苹果官网的文档中是这么写的, The representation of the time may be 13:00. In iOS, however, if the...
  • angular4 日期显示12小时制和24小时制

    千次阅读 2018-05-29 15:17:46
    今天在使用的时候发现自己傻x了,为何后台数据库存的数据格式都是24小时制,在前端显示的时候变成12小时制了……代码如下:&lt;td &gt;{{data['updateDate'] | date: "yyyy-mm-dd hh:mm:ss"}}&...
  • 出问题代码: SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); Date date = new Date(); date.setHours(18); ... System.out.println(date+"\n"+format....出错原因:hh,小写是12小时
  • Ubuntu 20.04 修改时区 24小时查看时间修改时区24小时 查看时间 # date -R Tue, 30 Mar 2021 06:30:30 +0000 修改时区 timedatectl set-timezone Asia/Shanghai # date -R Tue, 30 Mar 2021 14:31:13 +0800 24...
  • Linux之将系统时间设定为24小时制

    千次阅读 2020-02-01 11:12:44
    于是我在本地修改了后重新进行了推送,问题还是一样。在本地查看文件的修改时间,终于发现问题是出在Linux系统上面,这里我使用的是CentOS6系列发行版本。我在网上查找了关于Linux系统时间设定的资料,发现普遍的...
  • Windows 技术篇-修改电脑时间格式显示为12小时、24小时时间制式方法。...默认时间是24小时制的,下面我打算改成12小时制的,带上午下午的。 点击右下角的时间就能出现这个界面,然后选择更改日期和时间设置。
  • 24小时制的dateformat

    2011-06-09 08:19:00
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:... 是12小时制的 到了12点以后是重新从1点开始,而不是从13点继续下去 设置为24小时,需要将hh 修改为HH 即可。 SimpleDateFormat sdf = new Si

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 33,662
精华内容 13,464
关键字:

修改24小时制