導航:首頁 > 操作系統 > android獲取年份

android獲取年份

發布時間:2024-05-15 19:08:11

A. 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改一下,就可以欺騙過去了。

B. 濡備綍浣緼ndroid搴旂敤紼嬪簭鑾峰彇緋葷粺鏉冮檺 鏉ヤ慨鏀圭郴緇熸椂闂

鍦 android 鐨凙PI涓鏈夋彁渚 SystemClock.setCurrentTimeMillis()鍑芥暟鏉ヤ慨鏀圭郴緇熸椂闂達紝鍙鎯滄棤璁轟綘鎬庝箞璋冪敤榪欎釜鍑芥暟閮芥槸娌$敤鐨勶紝鏃犺烘ā鎷熷櫒榪樻槸鐪熸満錛屽湪logcat涓鎬諱細寰楀埌"Unable to open alarm driver: Permission denied ".榪欎釜鍑芥暟闇瑕乺oot鏉冮檺鎴栬呰繍琛屼笌緋葷粺榪涚▼涓鎵嶅彲浠ョ敤銆 鏈鏉ヤ互涓哄氨娌℃湁鍔炴硶鍦ㄥ簲鐢ㄧ▼搴忚繖涓灞傛敼緋葷粺鏃墮棿浜嗭紝鍚庢潵鍦ㄧ綉涓婃悳浜嗗ソ涔咃紝鐭ラ亾榪欎釜鐩鐨勮繕鏄鍙浠ヨ揪鍒扮殑銆 絎涓涓鏂規硶綆鍗曠偣錛屼笉榪囬渶瑕佸湪Android緋葷粺婧愮爜鐨勭幆澧冧笅鐢╩ake鏉ョ紪璇: 1. 鍦ㄥ簲鐢ㄧ▼搴忕殑AndroidManifest.xml涓鐨刴anifest鑺傜偣涓鍔犲叆 "android:sharedUserId="android.uid.system"榪欎釜灞炴с 2. 淇鏀笰ndroid.mk鏂囦歡錛屽姞鍏LOCAL_CERTIFICATE := platform榪欎竴琛 3. 浣跨敤mm鍛戒護鏉ョ紪璇戱紝鐢熸垚鐨刟pk灝辨湁淇鏀圭郴緇熸椂闂寸殑鏉冮檺浜嗐 絎浜屼釜鏂規硶楹葷儲鐐癸紝涓嶈繃涓嶇敤寮鉶氭嫙鏈鴻窇鍒版簮鐮佺幆澧冧笅鐢╩ake鏉ョ紪璇: 1. 鍚屼笂錛屽姞鍏"android:sharedUserId="android.uid.system"榪欎釜灞炴с 2. 浣跨敤eclipse緙栬瘧鍑篴pk鏂囦歡錛屼絾鏄榪欎釜apk鏂囦歡鏄涓嶈兘鐢ㄧ殑銆 3. 鐢ㄥ帇緙╄蔣浠舵墦寮apk鏂囦歡錛屽垹鎺塎ETA-INF鐩褰曚笅鐨凜ERT.SF鍜孋ERT.RSA涓や釜鏂囦歡銆 4. 浣跨敤鐩鏍囩郴緇熺殑platform瀵嗛掗鏉ラ噸鏂扮粰apk鏂囦歡絳懼悕銆傝繖姝ユ瘮杈冮夯鐑︼紝 棣栧厛鎵懼埌瀵嗛掗鏂囦歡錛屽湪鎴戠殑Android婧愮爜鐩褰曚腑鐨勪綅緗鏄"build argetproctsecurity"錛屼笅闈㈢殑platform.pk8鍜宲latform.x509.pem涓や釜鏂囦歡銆 鐒跺悗鐢ˋndroid鎻愪緵鐨凷ignapk宸ュ叿鏉ョ懼悕錛宻ignapk鐨勬簮浠g爜鏄鍦"build oolssignapk"涓嬶紝鐢ㄦ硶涓"signapk platform.x509.pem platform.pk8 input.apk output.apk"錛屾枃浠跺悕鏈濂戒嬌鐢ㄧ粷瀵硅礬寰勯槻姝㈡壘涓嶅埌錛屼篃鍙浠ヤ慨鏀規簮浠g爜鐩存帴浣跨敤銆傝繖鏍鋒渶鍚庡緱鍒扮殑apk鍜岀涓涓鏂規硶鏄涓鏍風殑銆 鏈鍚庤В閲婁竴涓嬪師鐞嗭紝棣栧厛鍔犲叆android:sharedUserId="android.uid.system"榪欎釜灞炴с傞氳繃Shared User id,鎷ユ湁鍚屼竴涓猆ser id鐨勫氫釜APK鍙浠ラ厤緗鎴愯繍琛屽湪鍚屼竴涓榪涚▼涓銆傞偅涔堟妸紼嬪簭鐨刄ID閰嶆垚android.uid.system錛屼篃灝辨槸瑕佽╃▼搴忚繍琛屽湪緋葷粺榪涚▼涓錛岃繖鏍峰氨鏈夋潈闄愭潵淇鏀圭郴緇熸椂闂翠簡銆 鍙鏄鍔犲叆UID榪樹笉澶燂紝濡傛灉榪欐椂鍊欏畨瑁匒PK鐨勮瘽鍙戠幇鏃犳硶瀹夎咃紝鎻愮ず絳懼悕涓嶇︼紝鍘熷洜鏄紼嬪簭鎯寵佽繍琛屽湪緋葷粺榪涚▼涓榪樿佹湁鐩鏍囩郴緇熺殑platform key錛屽氨鏄涓婇潰絎浜屼釜鏂規硶鎻愬埌鐨刾latform.pk8鍜宲latform.x509.pem涓や釜鏂囦歡銆傜敤榪欎袱涓猭ey絳懼悕鍚巃pk鎵嶇湡姝e彲浠ユ斁鍏ョ郴緇熻繘紼嬩腑銆傜涓涓鏂規硶涓鍔犲叆LOCAL_CERTIFICATE := platform鍏跺疄灝辨槸鐢ㄨ繖涓や釜key鏉ョ懼悕銆 榪欎篃鏈変竴涓闂棰橈紝灝辨槸榪欐牱鐢熸垚鐨勭▼搴忓彧鏈夊湪鍘熷嬬殑Android緋葷粺鎴栬呮槸鑷宸辯紪璇戠殑緋葷粺涓鎵嶅彲浠ョ敤錛屽洜涓鴻繖鏍風殑緋葷粺鎵嶅彲浠ユ嬁鍒 platform.pk8鍜宲latform.x509.pem涓や釜鏂囦歡銆傝佹槸鍒瀹跺叕鍙稿仛鐨凙ndroid涓婅繛瀹夎呴兘瀹夎呬笉浜嗐傝瘯璇曞師濮嬬殑Android 涓鐨刱ey鏉ョ懼悕錛岀▼搴忓湪妯℃嫙鍣ㄤ笂榪愯孫K錛屼笉榪囨斁鍒癎3涓婂畨瑁呯洿鎺ユ彁紺"Package ... has no signatures that match those in shared user android.uid.system"錛岃繖鏍蜂篃鏄淇濇姢浜嗙郴緇熺殑瀹夊叏銆

C. android 如何獲取某月的最後一天

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");

//獲取前月的第一天
Calendar cal_1=Calendar.getInstance();//獲取當前日期
cal_1.add(Calendar.MONTH, -1);
cal_1.set(Calendar.DAY_OF_MONTH,1);//設置為1號,當前日期既為本月第一天
firstDay = format.format(cal_1.getTime());
System.out.println("-----1------firstDay:"+firstDay);
//獲取前月的最後一天
Calendar cale = Calendar.getInstance();
cale.set(Calendar.DAY_OF_MONTH,0);//設置為1號,當前日期既為本月第一天
lastDay = format.format(cale.getTime());
System.out.println("-----2------lastDay:"+lastDay);

//獲取當前月第一天:
Calendar c = Calendar.getInstance();
c.add(Calendar.MONTH, 0);
c.set(Calendar.DAY_OF_MONTH,1);//設置為1號,當前日期既為本月第一天
String first = format.format(c.getTime());
System.out.println("===============first:"+first);

//獲取當前月最後一天
Calendar ca = Calendar.getInstance();
ca.set(Calendar.DAY_OF_MONTH, ca.getActualMaximum(Calendar.DAY_OF_MONTH));
String last = format.format(ca.getTime());
System.out.println("===============last:"+last);

D. Android 系統各版本的推出年份是多少(如Android1.0 1.5 2.1 2.2)

系統版本
Android 1.1
android手機
發布時間:發布於 2009 年 2 月 代表手機:T-MOBILE G1
Android 1.5 Cupcake
發布於 2009 年 5 月 代表手機:摩托羅拉CILQ
Android 1.6 Donut
2009 年 9 月發布 代表手機:索尼愛立信 X10,摩托羅拉A1680
Android 2.0 Eclair
2009 年 10 月 26 日 代表機型:摩托羅拉XT800,摩托羅拉里程碑
Android 2.1 Eclair
Android 2.1: 2009 年 10 月 26 日,又一個主要版本升級以創紀錄的速度放出。這次,大版本升級到了Android 2.1 「Eclair.」 Android 2.1主要特性: 提升硬體速度 更多屏幕以及解析度選擇 大幅度的用戶界面改良 支持 Exchange活動牆紙 大幅改進虛擬鍵盤 藍牙 2.1 Google 地圖 Android 2.0.1 SDK 於 2009 年 12 月 3 日 發布,之後是2010 年 1 月 10 日的 2.1 版本。很多用戶和圍觀群眾可能會奇怪:「為什麼 Android 會用甜點作為它們系統版本的代號?」,這個命名方法開始於 Andoird 1.5 發布的時候。作為每個版本代表的甜點的尺寸越變越大,然後按照字母數序:小蛋糕,甜甜圈還有松餅。之前人們預計 2.2 版本的代號會是「餡餅」,但這個被最終證明是錯誤的,「FroYo」(凍酸奶)才是 Android 2.2 這個伴隨 Google Nexus One 發布的新版的最新代號。
Android 2.2 Froyo
谷歌於北京時間2010年5月20日晚上10:30點在舊金山Moscone會展中心舉辦Google I/O 2010大會第二天的會議,Google正式發布了代號是「froyo 凍酸奶」的Android操作系統2.2版。 相對於上一版本的 改變: 1、整體性能大幅度的提升 2、3G網路共享功能。 3、Flash的支持。 4、App2sd功能。 5、全新的軟體商店。 6、更多的Web應用API介面的開發。
Android 2.3 Gingerbread
gingerdroid
北京時間2010年12月7日凌晨,Google正式對外發布了他們的下一代智能手機操作系統Android 2.3也就被大家所熟知的Android Gingerbread系統。 主要更新包括: 游戲:增加了新的垃圾回收和優化處理事件,以提高對游戲的支持能力。原生代碼可直接存取輸入和感應器事件、EGL/OpenGL ES、OpenSL ES。新的管理窗口和生命周期的框架。 多媒體:支持VP8和WebM視頻格式,提供AAC和AMR寬頻編碼,提供了新的音頻效果器,比如混響、均衡、虛擬耳機和低頻提升 通訊方式:支持前置攝像頭、SIP/VOIP和NFC(近場通訊) 站在用戶的角度看,這次更新的亮點主要有: 簡化界面、速度提升: 更快更直觀的文字輸入: 一鍵文字選擇和復制/粘帖: 改進的電源管理系統: 新的應用管理方式: 原生支持前置前置攝像頭、互聯網通話和NFC(近場通訊): 系統原生支持VoIP,可以在聯系人里加入它的SIP帳戶,然後直接通過系統來撥打VoIP電話。 增加下載管理器:
Android 2.4 Gingerbread
就像Android 2.0和2.1版本都使用Eclair(法式奶油夾心甜點)一樣,Android 2.3和2.4將會共享Gingerbread(姜餅)代號。這兩個版本之間的變化不會太大,但是會有不少功能更新。 目前已知的Android 2.4帶來的更新包括更多的動畫特效、更快的運行速度、軟體通話降噪、視頻聊天等。 Android 2.4系統不會是之前一直謠傳的Android 3.0,其真正的版本號將會是Android 2.4。
Android 3.0 Honeycomb

2011年2月3日凌晨,谷歌正式發布了專用於平板電腦的Android 3.0 Honeycomb系統。這是首個基於Android的平板電腦專用操作。首款採用Android3.0系統的是MOTO XOOM 。該機是摩托羅拉移動在2011年1月5日,在美國拉斯維加斯 CES電子消費展推出的旗下首款平板電腦。 3.0系統特性 ·專用於平板電腦 ·全新設計的UI增強網頁瀏覽功能 ·n-app purchases功能 ·經過優化的Gmail電子郵箱; ·全面支持Google Maps

E. android 怎麼獲得星期幾

java代碼如下:段攜世x0dx0apublic class DataString { x0dx0a private static String mYear; x0dx0a private static String mMonth; x0dx0a private static String mDay; x0dx0a private static String mWay; x0dx0a x0dx0a public static String StringData(){ x0dx0a final Calendar c = Calendar.getInstance(); x0dx0a c.setTimeZone(TimeZone.getTimeZone("GMT+8:00")); x0dx0a mYear = String.valueOf(c.get(Calendar.YEAR)); // 獲取當前年份 x0dx0a mMonth = String.valueOf(c.get(Calendar.MONTH) + 1);// 獲取當前月份 x0dx0a mDay = String.valueOf(c.get(Calendar.DAY_OF_MONTH));// 獲取握肢當前月份的日期號碼 x0dx0a mWay = String.valueOf(c.get(Calendar.DAY_OF_WEEK)); x0dx0a if("1".equals(mWay)){ x0dx0a mWay ="天"; x0dx0a }else if("2".equals(mWay)){ x0dx0a mWay ="一"; x0dx0a }else if("3".equals(mWay)){ x0dx0a mWay ="二"; x0dx0a }else if("4".equals(mWay)){ x0dx0a mWay ="三"; x0dx0a }else if("5".equals(mWay)){ x0dx0a mWay ="四"; x0dx0a }else if("6".equals(mWay)){ x0dx0a mWay ="五"; x0dx0a }else if("7".equals(mWay)){ x0dx0a mWay ="六"; x0dx0a } x0dx0a return mYear + "年" + mMonth + "月" + mDay+"日"+"/星隱明期"+mWay; x0dx0a } x0dx0a x0dx0a}

F. 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獲取年份相關的資料

熱點內容
參考文獻有什麼app 瀏覽:520
二十八宿的演算法 瀏覽:517
論客的伺服器怎麼設置 瀏覽:571
java中主方法 瀏覽:527
armlinux交叉編譯器 瀏覽:734
ios編程難嗎 瀏覽:660
為什麼叫A演算法 瀏覽:209
安卓手機10塊錢可以買什麼手機 瀏覽:275
怎樣對某一列部分數據加密 瀏覽:364
typecho伺服器怎麼登錄 瀏覽:301
龍雀服源碼 瀏覽:337
網球小恐龍解壓玩具 瀏覽:442
開關電源還是單片機有 瀏覽:201
金得利文件夾是哪產的 瀏覽:924
電腦棕色文件夾打不開 瀏覽:657
微信如何使用網路代理伺服器 瀏覽:327
無線網橋加密技術 瀏覽:286
pdf格式轉化ppt 瀏覽:934
程序設計流程圖表達演算法 瀏覽:539
plc程序員待遇怎麼樣 瀏覽:596