[英]Offline push notification - reminder feature
我有興趣以提醒的形式向我的應用程序添加通知。
我已經研究了通知,但我還沒有找到一種方法來在不打開應用程序的情況下做到這一點。
例如,我想添加一個時間設置,它將存儲發送通知的時間。
然后,每天(或 w\\e),在給定的時間,我希望用戶收到通知,他可以單擊該通知進入應用程序。
它是如何完成的?
您需要編寫一個基於AlarmManager
的程序來安排應用程序的調用,然后使用NotificationCompat.Builder
將本地通知發送到 UI
看看下面的鏈接,它會讓你輕松入門
http://developer.android.com/training/scheduling/alarms.html
更好的是,您可能想要查看GCMNetworkManager ,這是在特定時間安排任務發生的另一種好方法。
您不需要為警報或其他計划事件的發生而運行應用程序。 生成定時事件以觸發通知的選項很少。
這是一個示例,您將設置 PendingIntent 以啟動通知:
private void setAlarm() {
final AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
final Intent i = new Intent(this, MyNotifService.class);
final PendingIntent pi = PendingIntent.getService(this, 0, i, 0);
am.cancel(pi);
final Calendar cal = Calendar.getInstance();
final String notifTime = prefs.getString("notif_time", "07:30");
final String[] times = notifTime.split(":");
final int hour = Integer.parseInt(times[0]);
final int min = Integer.parseInt(times[1]);
cal.set(Calendar.HOUR_OF_DAY, hour);
cal.set(Calendar.MINUTE, min);
am.setRepeating(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(),
AlarmManager.INTERVAL_DAY, pi);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.