android获得系统时间
❶ android 获取时间需要权限吗
不需要权限
取得系统时间
1。
long time=System.currentTimeMillis();
2。
final Calendar mCalendar=Calendar.getInstance();
mCalendar.setTimeInMillis(time);
取得小时:mHour=mCalendar.get(Calendar.HOUR);
取得分钟:mMinuts=mCalendar.get(Calendar.MINUTE);
3。
Time t=new Time(); // or Time t=new Time("GMT+8"); 加上Time Zone资料
t.setToNow(); // 取得系统时间。
int year = t.year;
int month = t.month;
int date = t.monthDay;
int hour = t.hour; // 0-23
4。
DateFormat df = new SimpleDateFormat("HH:mm:ss");
df.format(new Date());
❷ 如何获取android系统时间是24小时制还是12小时制
java">获取android当前系统的时间是否是使用24小时格式
之前在网上查到一些资料,使用如下方式进行判断:
ContentResolverc=context.getContentResolver();StringstrTimeFormat=android.provider.Settings.System.getString(c,android.provider.Settings.System.TIME_12_24);if(strTimeFormat.equals("24")){if(Log.isLoggable(TAG,Log.DEBUG)){Log.d(TAG,"Thesystemtimeis24hourformat");}}
以上是依赖于系统android.provider.Settings中的方法,但如果当系统启动后,没有完成对
android.provider.Settings的初始化,使用这一方式有会出现异常.
正确的使用应该是通过android.text.format.DateFormat提供的一个方法可以获取当前系统时间是否使用24小时格式:
(Contextcontext)
Since:APILevel3
-hourformat.
Parameters
Returns
,falseotherwise.
❸ android有个获取时间的函数:systemTime(SYSTEM_TIME_MONOTONIC);我想知道SYSTEM_TIME_MONOTONIC什么意思
获取系统当前的时间。下面的文章希望能帮到您。
在一些系统调用中需要指定时间是用CLOCK_MONOTONIC还是CLOCK_REALTIME,以前总是搞不太清楚它们之间的差别,现在终于有所理解了。
CLOCK_MONOTONIC是monotonic time,而CLOCK_REALTIME是wall time。
monotonic time字面意思是单调时间,实际上它指的是系统启动以后流逝的时间,这是由变量jiffies来记录的。系统每次启动时jiffies初始化为0,每来一个timer interrupt,jiffies加1,也就是说它代表系统启动后流逝的tick数。jiffies一定是单调递增的,因为时间不够逆嘛!
wall time字面意思是挂钟时间,实际上就是指的是现实的时间,这是由变量xtime来记录的。系统每次启动时将CMOS上的RTC时间读入xtime,这个值是"自1970-01-01起经历的秒数、本秒中经历的纳秒数",每来一个timer interrupt,也需要去更新xtime。
以前我一直想不明白,既然每个timer interrupt,jiffies和xtime都要更新,那么不都是单调递增的吗?那它们之间使用时有什么区别呢?昨天看到一篇文章,终于明白了,wall time不一定是单调递增的。因为wall time是指现实中的实际时间,如果系统要与网络中某个节点时间同步、或者由系统管理员觉得这个wall time与现实时间不一致,有可能任意的改变这个wall time。最简单的例子是,我们用户可以去任意修改系统时间,这个被修改的时间应该就是wall time,即xtime,它甚至可以被写入RTC而永久保存。一些应用软件可能就是用到了这个wall time,比如以前用vmware workstation,一启动提示试用期已过,但是只要把系统时间调整一下提前一年,再启动就不会有提示了,这很可能就是因为它启动时用gettimeofday去读wall time,然后判断是否过期,只要将wall time改一下,就可以欺骗过去了。
❹ android得到系统时间如何判断是白天还是晚上
android得到的系统时间判断是白天还是晚上一般由两种方法,第一种,如果是24小时制直接看就可以了;第二种,12小时制,一般系统都会标示am和pm,其中am为上午,pm为下午。 二十四小时制,是把每日由午夜至午夜共分为二十四个小时,从数字0至23(24是每日完结的午夜)。这个时间记录系统是现今全世界最常用的。 美国的人们还不能习惯二十四小时制,这在工业化国家中是仅有的。二十四小时制在美国和加拿大仍然被称为军事时间,而在英国则被称作大陆时间。二十四小时制还是国际标准时间系统(国际标准 8601)。 十二小时制是一个时间规则把一日二十四小时分为两个时段,分别为上午(a.m.,拉丁文ante meridiem表示中午之前)和 下午(p.m.,拉丁文post meridiem表示中午之后)。每个时段由十二个小时构成,以数字12、1、2、3、4、5、6、7、8、9、10、11依次序表示。上午时段由午夜至中午,而下午时段由中午至午夜。
❺ 怎么获取android系统日期格式
Android中获取系统时间和日期,星期代码如下:
import java.text.SimpleDateFormat;
SimpleDateFormat formatter = new SimpleDateFormat ("yyyy年MM月dd日 HH:mm:ss ");
Date curDate = new Date(System.currentTimeMillis());//获取当前时间
String str = formatter.format(curDate);
可以获取当前的年月时分,也可以分开写:
复制代码 代码如下:
SimpleDateFormat sDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String date = sDateFormat.format(new java.util.Date());
如果想获取当前的年月,则可以这样写(只获取时间或秒种一样):
Java代码
复制代码 代码如下:
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM");
String date=sdf.format(new java.util.Date());
当然还有就是可以指定时区的时间(待):
复制代码 代码如下:
df=DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL,Locale.CHINA);
System.out.println(df.format(new Date()));
如何获取Android系统时间是24小时制还是12小时制
复制代码 代码如下:
ContentResolver cv = this.getContentResolver();
String strTimeFormat = android.provider.Settings.System.getString(cv,
android.provider.Settings.System.TIME_12_24);
if(strTimeFormat.equals("24"))
{
Log.i("activity","24");
}
复制代码 代码如下:
Calendar c = Calendar.getInstance();
取得系统日期:year = c.get(Calendar.YEAR)
month = c.grt(Calendar.MONTH)
day = c.get(Calendar.DAY_OF_MONTH)
取得系统时间:hour = c.get(Calendar.HOUR_OF_DAY);
minute = c.get(Calendar.MINUTE)
利用Calendar获取
复制代码 代码如下:
Calendar c = Calendar.getInstance();
取得系统日期:year = c.get(Calendar.YEAR)
month = c.grt(Calendar.MONTH)
day = c.get(Calendar.DAY_OF_MONTH)
取得系统时间:hour = c.get(Calendar.HOUR_OF_DAY);
minute = c.get(Calendar.MINUTE)
Calendar c = Calendar.getInstance();
取得系统日期:year = c.get(Calendar.YEAR)
month = c.grt(Calendar.MONTH)
day = c.get(Calendar.DAY_OF_MONTH)
取得系统时间:hour = c.get(Calendar.HOUR_OF_DAY);
minute = c.get(Calendar.MINUTE)
利用Time获取
复制代码 代码如下:
Time t=new Time(); // or Time t=new Time("GMT+8"); 加上Time Zone资料。
t.setToNow(); // 取得系统时间。
int year = t.year;
int month = t.month;
int date = t.monthDay;
int hour = t.hour; // 0-23
int minute = t.minute;
int second = t.second;
❻ android怎么获得当前时间
取得系统时间:
1。long time=System.currentTimeMillis();
2。final Calendar mCalendar=Calendar.getInstance();
mCalendar.setTimeInMillis(time);
取得小时:mHour=mCalendar.get(Calendar.HOUR);
取得分钟:mMinuts=mCalendar.get(Calendar.MINUTE);
3。Time t=new Time(); // or Time t=new Time("GMT+8"); 加上Time Zone资料
t.setToNow(); // 取得系统时间。
int year = t.year;
int month = t.month;
int date = t.monthDay;
int hour = t.hour; // 0-23
4。DateFormat df = new SimpleDateFormat("HH:mm:ss");
df.format(new Date());
❼ android获取系统时间并显示
import java.util.Calendar;
import android.app.Activity;import android.os.Bundle;
public class GetSystemTime001Activity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Calendar c=Calendar.getInstance();
String time=c.get(Calendar.YEAR)+"-"+ //得到年
formatTime(c.get(Calendar.MONTH)+1)+"-"+//month加一 //月
formatTime(c.get(Calendar.DAY_OF_MONTH))+" "+ //日
formatTime(c.get(Calendar.HOUR_OF_DAY))+":"+ //时
formatTime(c.get(Calendar.MINUTE))+":"+ //分
formatTime(c.get(Calendar.SECOND)); //秒
System.out.println(time); //输出
}
private String formatTime(int t){
return t>=10? ""+t:"0"+t;//三元运算符 t>10时取 ""+t
}
}
❽ 如何获取android从系统开机开始算起的运行时间
安卓系统平板电脑部分设备可以查看到系统的“开机时间”。开机时间记录了,你所使用设备的时间总时长。即便连续使用,也会积累时间算下去。现在就来看一下你设备的开机时间吧!步骤如下:
(1)在主屏幕上轻按“设置”按钮。或者,按下物理按钮“Menu”,选择“设置”。
(2)在设置的列表下,轻按选择“关于本机”按钮。
(3)然后,轻按“状态消息”按钮。
(4)查看“开机时间”。编者按:
使用安卓系统的设备,在长时间不使用时,建议关机,不但可以省电还可以起到保护设备的作用。如果短时间离开,像是去洗手间,可以把它锁屏,这样也是保养设备的一种方式。系统上显示的“开机时间”,它可以告诉你使用的设备的时长。或者推算系统开机的时间。如果发现长时间没有关机,则需要正常重新启动一次。
❾ 关于Android中怎么获取系统时间的方法多次执行后时间仍不变
给按钮添加OnTouchListener,实现onTouch(Viewv,MotionEventevent)方法,再利用event.getAction()和event.getEventTime(),可分别获得手指动作及事件发生的毫秒值。两次单击的时间间隔即为两次MotionEvent.ACTION_UP动作之间的毫秒值差
❿ Android 怎么获取当前的时间戳
Android获取当前时间代码
//需要引用的
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
//详细代码
java.util.Date currentdate = new java.util.Date();//当前时间
//long i = (currentdate.getTime()/1000-timestamp)/(60);
//System.out.println(currentdate.getTime());
//System.out.println(i);
Timestamp now = new Timestamp(System.currentTimeMillis());//获取系统当前时间
System.out.println("now-->"+now);//返回结果精确到毫秒。
时间戳转日期
int timestamp = 1310457552; //将这个时间戳转为日期
return getTime(timestamp);
定义getTime, getDate, IntToLong
public static String getTime(int timestamp){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time= null;
try {
String str = sdf.format(new Timestamp(IntToLong(timestamp)));
time = str.substring(11, 16);
String month = str.substring(5, 7);
String day = str.substring(8,10 );
time =getDate(month, day)+ time;
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return time;
}
public static String getDate(String month,String day){
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//24小时制
java.util.Date d = new java.util.Date(); ;
String str = sdf.format(d);
String nowmonth = str.substring(5, 7);
String nowday = str.substring(8,10 );
String result = null;
int temp = Integer.parseInt(nowday)-Integer.parseInt(day);
switch (temp) {
case 0:
result="今天";
break;
case 1:
result = "昨天";
break;
case 2:
result = "前天";
break;
default:
StringBuilder sb = new StringBuilder();
sb.append(Integer.parseInt(month)+"月");
sb.append(Integer.parseInt(day)+"日");
result = sb.toString();
break;
}
return result;
}
//java Timestamp构造函数需传入Long型
public static long IntToLong(int i){
long result = (long)i;
result*=1000;
return result;
}