Android实践 -- 设置系统日期时间和时区
设置系统日期时间和时区
设置系统的日期时间和时区,需要 系统权限和系统签名,android:sharedUserId="android.uid.system"
需要在manifest文件中添加相应的权限
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>
判断系统使用的是24小时制还是12小时制
boolean is24Hour = DateFormat.is24HourFormat(mContext);
- 设置系统的小时制
24小时制
android.provider.Settings.System.putString(mContext.getContentResolver(),
android.provider.Settings.System.TIME_12_24, "24");
12小时制
android.provider.Settings.System.putString(mContext.getContentResolver(),
android.provider.Settings.System.TIME_12_24, "12");
判断系统的时区是否是自动获取的
public boolean isTimeZoneAuto(){
try {
return android.provider.Settings.Global.getInt(mContext.getContentResolver(),
android.provider.Settings.Global.AUTO_TIME_ZONE) > 0;
} catch (SettingNotFoundException e) {
e.printStackTrace();
return false;
}
}设置系统的时区是否自动获取
public void setAutoTimeZone(int checked){
android.provider.Settings.Global.putInt(mContext.getContentResolver(),
android.provider.Settings.Global.AUTO_TIME_ZONE, checked);
}判断系统的时间是否自动获取的
public boolean isDateTimeAuto(){
try {
return android.provider.Settings.Global.getInt(mContext.getContentResolver(),
android.provider.Settings.Global.AUTO_TIME) > 0;
} catch (SettingNotFoundException e) {
e.printStackTrace();
return false;
}
}设置系统的时间是否需要自动获取
public void setAutoDateTime(int checked){
android.provider.Settings.Global.putInt(mContext.getContentResolver(),
android.provider.Settings.Global.AUTO_TIME, checked);
}设置系统日期
参考系统Settings中的源码
public void setSysDate(int year,int month,int day){
Calendar c = Calendar.getInstance();
c.set(Calendar.YEAR, year);
c.set(Calendar.MONTH, month);
c.set(Calendar.DAY_OF_MONTH, day); long when = c.getTimeInMillis(); if(when / 1000 < Integer.MAX_VALUE){
((AlarmManager)mContext.getSystemService(Context.ALARM_SERVICE)).setTime(when);
}
}设置系统时间
参考系统Settings中的源码
public void setSysTime(int hour,int minute){
Calendar c = Calendar.getInstance();
c.set(Calendar.HOUR_OF_DAY, hour);
c.set(Calendar.MINUTE, minute);
c.set(Calendar.SECOND, 0);
c.set(Calendar.MILLISECOND, 0); long when = c.getTimeInMillis(); if(when / 1000 < Integer.MAX_VALUE){
((AlarmManager)mContext.getSystemService(Context.ALARM_SERVICE)).setTime(when);
}
}设置系统时区
public void setTimeZone(String timeZone){
final Calendar now = Calendar.getInstance();
TimeZone tz = TimeZone.getTimeZone(timeZone);
now.setTimeZone(tz);
}获取系统当前的时区
public String getDefaultTimeZone(){
return TimeZone.getDefault().getDisplayName();
}
Android实践 -- 设置系统日期时间和时区的更多相关文章
- linux设置系统日期时间
设置当前日期: date -s 08/06/2015 设置当前时间:date -s 10:03:00 写入BIOS: clock -w 显示当前日期时间: date
- Android 通过应用设置系统日期和时间的方法
Android 通过应用设置系统日期和时间的方法 android 2.3 android 4.0 测试可行,不过需要ROOT权限. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...
- Linux date命令 - 显示和设置系统日期与时间
操作系统上的时间也许只是当做一个时钟.特别在控制台下, 我们通常并不认为时间有什么重要的.但是对于管理员,这种认识是错误的.你知道错误的日期和时间会导致你不能编译程序么? 因为日期和时间很重要,这或许 ...
- CentOS下date命令 - 显示和设置系统日期与时间
显示系统日期 要显示系统日期,只要输入: $ date Thu Dec 5 22:55:41 WIB 2013 格式化显示日期 日期有很多格式.如果你不喜欢默认的格式,你可以换一种格式.你可能会想&q ...
- 我使用过的Linux命令之date - 显示、修改系统日期时间
原文地址:http://www.cnblogs.com/diyunpeng/archive/2011/11/20/2256538.html 用途说明 ate命令可以用来显示和修改系统日期时间,注意不是 ...
- 我使用过的Linux命令之date - 显示、修改系统日期时间(转)
用途说明 ate命令可以用来显示和修改系统日期时间,注意不是time命令. 常用参数 格式:date 显示当前日期时间. 格式:date mmddHHMM 格式:date mmddHHMMYYYY 格 ...
- 【BASIS系列】SAP 设置系统timeout时间
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[BASIS系列]SAP 设置系统timeout ...
- Android中关于日期时间与时区的使用总结
在开发Android的过程中,出现过几次由于日期时间导致的问题,而且主要是由于时区的原因导致,所以一直想总结一下,形成一个良好的开发规范. 一.Unix时间戳 Unix时间戳(Unix tim ...
- Android 系统日期时间的获取
import java.text.SimpleDateFormat; SimpleDateFormat formatter = new SimpleDateFormat ("yyyy年MM月 ...
随机推荐
- jQuery对checkbox选中和取消选中操作
最近做项目发现jQuery对checkbox的全选和非全选操作只有第一次生效,以后就不生效了,不知道是不是jQuery版本库的问题,最终找到了一个解决方案: 把原来的下面这两句: $('input') ...
- vue踩坑-This dependency was not found
* vux in ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?type=script&i ...
- Java的线程机制
一.Java中实现多线程的两种方式1) 继承Thread类 Thread类包括了包括和创建线程所需的一切东西. Thread 最重要的方法是 run().编写线程程序时须要覆盖 run() 方法,ru ...
- 解决 php7 cli 模式下中文乱码的两中方法
解决 php7 cli 模式下中文乱码的两中方法1. 给PHP文件开头加上 exec('chcp 936'); 然后把该文件以 ANSI 格式编码2. 在 php.ini 中设置 default_ch ...
- js -- 分页功能
html 代码 <html> <head> <meta charset='utf-8'> <script type="text/javascript ...
- POJ 2981 Strange Way to Express Integers 模线性方程组
http://poj.org/problem?id=2891 结果看了半天还是没懂那个模的含义...懂了我再补充... 其他的思路都在注释里 /********************* Templa ...
- 洛谷——P1843 奶牛晒衣服
https://www.luogu.org/problem/show?pid=1843#sub 题目背景 熊大妈决定给每个牛宝宝都穿上可爱的婴儿装 . 于是 , 为牛宝宝洗晒衣 服就成了很不爽的事情. ...
- error c2572重定义默认參数
因为想省事.在声明过函数之后直接复制粘贴去实现,结果出现error c2572重定义默认參数 顾名思义.该默认參数被定义多次.在一个文件(或一个作用域)中,仅仅能为形參指定默认 实參一次.在编译的时候 ...
- 怎样在nat方式的虚拟机下做ssh连接
很多人在本机做測试都是用桥接的方式让虚拟机上网. 假设ip地址紧张或者根本就不同意我们拥有一个局域网的ip.这时候便能够使用NAT方式+putty来远程操作. 第一步,打开设备-Network-更改网 ...
- 使用TCP协议的NAT穿透技术 (转载)
其实很早我就已经实现了使用TCP协议穿透NAT了,但是苦于一直没有时间,所以没有写出来,现在终于放假有一点空闲,于是写出来共享之. 一直以来,说起NAT穿透,很多人都会被告知使用UDP打孔这个技术,基 ...