我有推送通知的Android应用程序。我遇到一些设备问题,当我发送推送通知时,用户的应用程序会自动打开。我不想那样做。我希望通知正常显示,如果用户点击它,则会打开该应用。
如何阻止应用自动打开?
以下是推送通知意图的代码:
Intent notificationIntent = new Intent(this, MainActivity.class);
notificationIntent.setFlags(
Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent contentIntent = PendingIntent.getActivity(this, requestID, notificationIntent,
PendingIntent.FLAG_UPDATE_CURRENT);
// Display a notification with an icon, message as content, and default sound. It also
// opens the app when the notification is clicked.
NotificationCompat.Builder builder = new NotificationCompat.Builder(this)
.setContentTitle(title)
.setContentText(message)
.setColor(0xFF221E80)
.setDefaults(Notification.DEFAULT_SOUND)
.setAutoCancel(true)
.setFullScreenIntent(contentIntent, true)
.setContentIntent(contentIntent);
NotificationManager notificationManager = (NotificationManager) getSystemService(
Context.NOTIFICATION_SERVICE);
notificationManager.notify(0, builder.build());
答案 0 :(得分:3)
如果您查看NotificationCompat.Builder
的文档,可以看到问题setFullScreenIntent
。
启动而不是将通知发布到状态栏的意图。仅用于要求用户立即关注的极高优先级通知,例如用户明确设置为特定时间的来电或闹钟。如果此设施用于其他设施,请为用户提供关闭并使用正常通知的选项,因为这可能会造成极大的破坏。
在某些平台上,系统用户界面可能会选择在用户使用设备时显示抬头通知,而不是启动此意图。
您应该从构建器中删除setFullScreenIntent
。