如果应用未运行一周,应用尚未打开,则推送通知(Android)

时间:2015-09-03 03:31:09

标签: android notifications

我正在编写代码来推送我的应用程序的通知,但我不知道如何显示此通知。当用户一周没有使用我的应用程序时,将显示通知,即使应用程序未运行,应用程序仍然可以发送通知。请帮我。谢谢。 这是我发送通知的代码。

private void showNotification(){
    final NotificationManager mgr=
            (NotificationManager)this.getSystemService(Context.NOTIFICATION_SERVICE);

    //Notice message
    Notification note=new Notification(R.mipmap.ic_launcher,
            "Notification is coming!",
            System.currentTimeMillis());

    // This pending intent will open class after notification click
    PendingIntent i=PendingIntent.getActivity(this, 0,
            new Intent(this, ResultActivity.class),
            0);

    //After swipe down notification
    note.setLatestEventInfo(this, "Title",
            "Context", i);

    //After uncomment this line you will see number of notification arrived
    //note.number=2;
    mgr.notify(notificationID, note);
}

1 个答案:

答案 0 :(得分:2)

基于Send notification once in a week,您只需在应用程序打开时保存,然后在将来7天内安排通知,每次用户打开应用程序时都会这样做。

您还可以使用唯一标识符保存每个警报,以便以后禁用它。

类似的东西:

PendingIntent pendingIntent = PendingIntent.getService(context, _id, intent, 0);
alarmManager.set(AlarmManager.RTC_WAKEUP, date.getTimeInMillis(), pendingIntent);

或取消它:

alarmManager.cancel(pendingIntent);

_id是取消活动闹钟的关键。

请记住,在使用AlarmManager时,重启设备时所有警报都会消失。