iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 30
0
public class InitAlarmReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {
// 建立資料庫物件
ItemDAO itemDAO = new ItemDAO(context.getApplicationContext());
// 讀取資料庫所有記事資料
List<Item> items = itemDAO.getAll();

// 讀取目前時間
long current = Calendar.getInstance().getTimeInMillis();

AlarmManager am = (AlarmManager)
context.getSystemService(Context.ALARM_SERVICE);

        for (Item item : items) {
            long alarm = item.getAlarmDatetime();

            // 如果沒有設定提醒或是提醒已經過期
            if (alarm == 0 || alarm <= current) {
                continue;
            }

//            // 設定提醒
Intent alarmIntent = new Intent(context, AlarmReceiver.class);
alarmIntent.putExtra("title", item.getTitle());
// 加入記事編號
//alarmIntent.putExtra("id", item.getId());
PendingIntent pi = PendingIntent.getBroadcast(
context, (int) item.getId(),
alarmIntent, PendingIntent.FLAG_ONE_SHOT);
am.set(AlarmManager.RTC_WAKEUP, item.getAlarmDatetime(), pi);


        }

    }
}
  • 這邊是做提醒時間的設置

那以上就是我為大家介紹的30天課程,感謝您的觀賞,謝謝。


上一篇
[DAY29]BroadcastReceiver
系列文
Java 與 Kotlin 入門30

尚未有邦友留言

立即登入留言