在我的应用程序中我正在使用推送notification.it工作正常。但是当我从任务管理器中删除(清理)应用程序时,推送通知未到达。我不知道的问题是什么。如果有人知道我怎么解决这个问题。请告诉我。
这是我发送通知的方法: -
private void sendNotification(String msg) {
mNotificationManager = (NotificationManager) this
.getSystemService(Context.NOTIFICATION_SERVICE);
Intent intent = new Intent(this, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
Log.e("message.....", msg);
if (msg.equals("You Have got New Message")) {
Log.e("msg occuring..", "intent enter in message...");
intent.putExtra("KEYMESSAGE", "Message");
} else {
Log.e("notification occuring..", "notification occurs.....");
intent.putExtra("KEYNOTIFICATION", "aman");
}
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
mBuilder = (NotificationCompat.Builder) new NotificationCompat.Builder(this)
.setSmallIcon(getNotificationIcon())
.setContentTitle("Telepoh")
.setStyle(new NotificationCompat.BigTextStyle().bigText(msg))
.setContentText(msg)
.setDefaults(Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE);
mBuilder.setContentIntent(contentIntent);
mBuilder.getNotification().flags |= Notification.FLAG_AUTO_CANCEL;
mBuilder.getNotification().flags |= Notification.FLAG_ONGOING_EVENT;
mBuilder.setOngoing(false);
mBuilder.setAutoCancel(true);
mNotificationManager.notify(NOTIFICATION_ID, mBuilder.build());
}
我的问题是,当应用程序处于运行状态时,通知正常。但是当应用程序从任务管理器中删除(清除)通知未到达时。如果有人知道问题是什么。请告诉我。
答案 0 :(得分:0)
用
替换此行intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
这一个
intent.addFlags(FLAG_INCLUDE_STOPPED_PACKAGES|Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
<强>编辑:强>
根据 Android指南一旦应用程序将被强制关闭,则所有服务,接收器和警报都将被销毁,因此在这种情况下您将不会收到任何通知
答案 1 :(得分:0)
推送通知是从服务器推送到客户端的消息。他们必须在你的应用程序中运行一些服务,以便你可以随时接受你的消息。
在我看来,请使用Firebase云消息传递。有关完整的教程和代码,请参阅以下内容: