找了一圈沒發(fā)現(xiàn)能得到開機(jī)啟動(dòng)時(shí)間資料,于是乎突發(fā)奇想,得到了解決方案。
我的思路是:程序里注冊(cè)個(gè)廣播接收器,接收開機(jī)啟動(dòng)的廣播,當(dāng)程序接到該廣播后,寫入文件SharedPreferences,當(dāng)我們程序需要用到開機(jī)時(shí)間時(shí),再從SharedPreferences中讀取信息。
廢話不多說,下面上大家喜歡的源碼!
AndroidManifest.xml
- <receiver android:name=".receiver.BootUpReceiver">
- <intent-filter>
- <action android:name="android.intent.action.BOOT_COMPLETED" />
- </intent-filter>
- </receiver>
Receiver文件,記錄開機(jī)時(shí)間
- public class BootUpReceiver extends BroadcastReceiver{
- private SharedPreferences sharedPreferences;// 配置文件
- private Editor editor;// 更改配置文件的類實(shí)例
- @Override
- public void onReceive(Context context, Intent intent) {
- if(intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)){
-
- sharedPreferences = context.getSharedPreferences("這是存儲(chǔ)文件的名字",
- Context.MODE_PRIVATE);
- editor = sharedPreferences.edit();
-
- editor.putLong("存儲(chǔ)時(shí)間的key", new Date().getTime());
-
- editor.commit();//別忘了提交哦
- }
-
- }
- }
讀取開機(jī)時(shí)間
- /**
- * Description : 獲取開機(jī)的時(shí)間
- *
- *@return String 秒數(shù)
- *
- */
- public static long getUpTime(Activity context) {
- SharedPreferences sharedPreferences=context.getSharedPreferences("這是存儲(chǔ)文件的名字", Context.MODE_PRIVATE);
-
- long seconds= sharedPreferences.getLong("存儲(chǔ)時(shí)間的key", new Date().getTime());
- return seconds;
- }
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)
點(diǎn)擊舉報(bào)。