Android獲取系統(tǒng)時間以及網(wǎng)絡時間
項目開發(fā)中,很多時候會用到android的時間,羅列一下獲取的時間的方式,和大家共同學習進步
一、獲取系統(tǒng)時間
1.通過Calendar類來獲取系統(tǒng)當前的時間
Calendar calendar = Calendar.getInstance(); long unixTime = calendar.getTimeInMillis();//這是時間戳 Logger.i(TAG,"calendar--->>>"+"當前時間為:" + calendar.get(Calendar.YEAR) + "年 " + calendar.get(Calendar.MONTH) + "月 " + calendar.get(Calendar.DAY_OF_MONTH) + "日 " + calendar.get(Calendar.HOUR_OF_DAY) + "時 " + calendar.get(Calendar.MINUTE) + "分 " + calendar.get(Calendar.SECOND) + "秒");
打印結(jié)果如下:
calendar--->>>當前時間為:2016年 6月 13日 14時 38分 58秒
2.通過Time來獲取,android的文檔中說使用Time比Calendar對CPU的性能損耗更小,我卻不推薦使用Time,因為Time使用必須在24小時制的系統(tǒng)中,如果用戶手機就設成12小時制的,這時就有誤差
Time times = new Time("GMT+8"); /*對于已經(jīng)設定為GMT時間標準的dateFormat來說, 一切需要他轉(zhuǎn)換的字符串日期都是GMT標準時間, 轉(zhuǎn)換后返回的Date由于默認 *遵守系統(tǒng)默認時區(qū),所以轉(zhuǎn)換給Date的日期需要+8 (例如北京標準時區(qū)),也就是時區(qū)與標準不同導致的時差。*/ times.setToNow(); int year = times.year; int month = times.month; int day = times.monthDay; int minute = times.minute; int hour = times.hour; int sec = times.second; Logger.i(TAG,"當前時間為:" + year + "年 " + month + "月 " + day + "日 " + hour + "時 " + minute + "分 " + sec + "秒");
打印結(jié)果:當前時間為:2016年 6月 13日 6時 38分 58秒
注意:這時的時間和上面使用時間是同一時間,不過時間我都調(diào)成是12小時制的
當然,還有其他的獲取方式,不過結(jié)果基本都一樣
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);
還有
DateFormat df = new SimpleDateFormat("HH:mm:ss"); df.format(new Date());
二、獲取網(wǎng)絡時間
很多時候,由于手機的不確定性,導致各個手機的時間都不盡相同,如果開發(fā)中需要獲取統(tǒng)一的時間來匹配一些規(guī)則的時候,比如我之前公司就是通過或去當前時間并且轉(zhuǎn)換之后來匹配網(wǎng)絡連接的規(guī)則,防止大批量的抓包,那么這個時候就需要一個統(tǒng)一的時間和后臺進行匹配,這是簡單的使用獲取系統(tǒng)時間就可能存在問題,用戶手機如果調(diào)成自動獲取網(wǎng)絡時間的話沒問題,但是如果不是呢?所以獲取網(wǎng)絡時間就派上了用處
URL url = null;//取得資源對象 try { url = new URL("http://www.baidu.com"); URLConnection uc = url.openConnection();//生成連接對象 uc.connect(); //發(fā)出連接 ld = uc.getDate(); //取得網(wǎng)站日期時間 Logger.i(TAG,"ld---->>>>"+ld); } catch (Exception e) { e.printStackTrace(); }
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Android自定義Dialog實現(xiàn)通用圓角對話框
這篇文章主要為大家詳細介紹了Android自定義Dialog實現(xiàn)通用圓角對話框,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-11-11Android自定義View實現(xiàn)數(shù)字雨效果的全過程
小時候看時印象最深的就是數(shù)字雨了,導致我現(xiàn)在寫代碼也要是黑屏,下面這篇文章主要給大家介紹了關于Android自定義View實現(xiàn)數(shù)字雨效果的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-02-02Android自定義view實現(xiàn)側(cè)滑欄詳解
之前一直沒有寫側(cè)滑菜單的實現(xiàn)方法,今天計劃補上。手機開發(fā)中,往往存在很多功能沒處放的問題。我們可能會把功能放入一個菜單列表,但現(xiàn)在一種流行的做法是側(cè)滑菜單2022-11-11搭建mac使用Charles抓包安卓app環(huán)境配置過程
這篇文章主要為大家介紹了mac使用Charles抓包,安卓app環(huán)境搭建的配置過程步驟,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步2022-02-02