㈠ android开发 怎么获取手机当前时间
Android的文件有建议用Time代替Calendar。用Time对CPU的负荷会较小。在写Widget时特别重要。
Time t=new Time(); // or Time t=new Time("GMT+8"); 加上Time Zone资料。
package itokit.com;
import android.app.Activity;
import android.os.Bundle;
import android.text.format.Time;
import android.widget.TextView;
public class ShowTime extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView myTextView = (TextView)findViewById(R.id.myTextView);
Time time = new Time("GMT+8");
time.setToNow();
int year = time.year;
int month = time.month;
int day = time.monthDay;
int minute = time.minute;
int hour = time.hour;
int sec = time.second;
myTextView.setText("当前时间为:" + year +
"年 " + month +
"月 " + day +
"日 " + hour +
"时 " + minute +
"分 " + sec +
"秒");
}
}
㈡ 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获取网络时间
把上面那个地址改一下,http://www.bjtime.cn这个网页现在不存在了,你改成https://gss0..com/8aQDcnSm2Q5IlBGlnYG/special/time/就可以啦!
㈣ Android GPS开发有个方法获取当前时间,但是时间是double类型,能介绍一下这个doub
没有啊,你用Location的getTime()方法返回的是long啊。这个long用的是UTC时间,你可以直接用Calendar来处理。详情请参考API。
另外,关于海拔的问题,反正目前我测的海拔都不咋准,估计这东西不太好使吧。
㈤ 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 获取时间 判断是上午的还是下午
long time = System.currentTimeMillis();
final Calendar mCalendar = Calendar.getInstance();
mCalendar.setTimeInMillis(time);
int hour = mCalendar.get(Calendar.HOUR);
int apm = mCalendar.get(Calendar.AM_PM);
apm=0 表示上午,apm=1表示下午。
其他的都能根据上面的hour一样的方式找到年月日时分秒,而要根据每天得工作时间(比如朝九晚五)就可以使用apm来判断。
㈦ android 获取当前时间后怎么获取年月日
Time time = new Time("GMT+8");
time.setToNow();
int year = time.year;
int month = time.month;
int day = time.monthDay;
int minute = time.minute;
int hour = time.hour;
int sec = time.second;
㈧ 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;
}
㈨ android获取手机真实时间与时区,IP地址
获得经纬度后就相应的得到时间了!好像是我们项目就是用的这个时间。。。时间是unix的计算方法,就是1970年1月1日0点0分0秒到现在的秒数,用new Date(location.getTime())就得到当前时间了,不过你得根据你的特殊情况进行判断计算了,可以再找找详细的资料,祝你好运~
㈩ 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());