簡體   English   中英

android提醒

[英]android reminder

我是android編程的新手,正在研究提醒應用程序。 現在,我已經將所有信息(包括日期和時間)存儲到SQLlite數據庫中。 我的問題是我如何將存儲在數據庫中的警報與Android上的當前時間進行匹配

查詢數據庫與日歷比較

Calendar c = Calendar.getInstance();
c.set(Calendar.MONTH, Calendar.MARCH);
c.set(Calendar.DAY_OF_MONTH, 3);
long time2=   c.getTimeInMillis();
c.set(Calendar.MONTH, Calendar.AUGUST);
  c.set(Calendar.DAY_OF_MONTH, 8);   
   long time3=   c.getTimeInMillis();
   if(time>time2){
 //Logic
 if(time>time3){
     //Logic
 }
 }

您需要做的是首先創建需要計划的意圖。 然后獲取該意圖的pendingIntent。 您可以安排活動,服務和廣播。 安排活動,例如MyActivity:

  Intent i = new Intent(getApplicationContext(), MyActivity.class);
  PendingIntent pi = PendingIntent.getActivity(getApplicationContext(),3333,i,
  PendingIntent.FLAG_CANCEL_CURRENT);

將此alarmIntent賦予alarmManager:

//getting current time and add 5 seconds in it
  Calendar cal = Calendar.getInstance();
  cal.add(Calendar.SECOND, 5);
  //registering our pending intent with alarmmanager
  AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
  am.set(AlarmManager.RTC_WAKEUP,cal.getTimeInMillis(), pi);

現在,無論您停止應用程序還是設備進入睡眠狀態(由於RTC_WAKEUP選項),MyActivity都會在應用程序啟動5秒后啟動。 您可以閱讀完整的示例代碼調度活動,服務和廣播#Android

或倒數秒,而不用使用日歷或相對的電話時間..我自己做了一個類似的應用,由於電話時間關閉或重置等原因,它似乎減少了變異性...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM