簡體   English   中英

離線推送通知-提醒功能

[英]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.

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