㈠ 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());