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月 ...
随机推荐
- django项目所遇问题总结
2. 关于设置static静态文件,样式失效问题 原因: 可能开启多个端口号,页面显示访问的不是已经设置了static的模板,所以,样式没有显示 3. models模型中gender字段的选择设置 c ...
- ListView常用操作
1.设置ListView只显示一列,并且每加一条记录是向下添加的. ListView添加方法:把View属性改成Details,再Columns属性中添加一列 然后用如下代码即可实现 ListView ...
- IsoAlgo3d - IDF/PCF pipeline 3d viewer
IsoAlgo3d - IDF/PCF pipeline 3d viewer eryar@163.com Key Words. IDF, PCF, IsoAlgo, 3D 当前国际主流管道设计软件都可 ...
- 停止复制代理后AWT缓存组的行为
AWT缓存组中尽管大多数时候数据是从TimesTen到Oracle,但也存在数据从Oracle到TimesTen的情形. 数据从TimesTen下沉到Oracle依靠复制代理,数据从Oracle到Ti ...
- Spring 配置自动扫描原理说明
Spring利用IOC容器将所有的bean进行有秩序的管理维护,而实际项目中不可能在xml文件中创建bean,而是利用了Spring的组件自动扫描机制,通过在classpath自动扫描的方式把组件纳入 ...
- 小项目: low版本的 员工信息程序:
### 附加两个文件1 user_info 和worker_info flag = False def logon(): #登录函数 global flag usr = input('Username ...
- Nabou应用实例
本文接上文 <完整性检查工具Nabou> http://chenguang.blog.51cto.com/350944/280712650) this.width=650;" ...
- AIX设备四种状态
AIX设备四种状态: Undefined(未定义):表示系统无法识别该设备,也就是系统无法找到该设备.(驱动无法识别) Defined(定义):表示系统可以识别设备,信息保存在ODM,但是系统不能使用 ...
- VS Code 关于SFTP上传文件到多服务器的配置
工欲善其事,必先利其器! 刚学前端的时候一直用的DW来编写代码,其功能非常强大,但在Linux下不能用,所以就转VS Code了. 但是刚开始使用VS Code的时候,很多DW上的功能需要自己安装扩展 ...
- LuoguP4012 深海机器人问题(费用流)
题目描述 深海资源考察探险队的潜艇将到达深海的海底进行科学考察. 潜艇内有多个深海机器人.潜艇到达深海海底后,深海机器人将离开潜艇向预定目标移动. 深海机器人在移动中还必须沿途采集海底生物标本.沿途生 ...