如何阻止推送通知自动打开应用程序?

时间:2016-11-11 18:40:11

标签: android push-notification

我有推送通知的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());

1 个答案:

答案 0 :(得分:3)

如果您查看NotificationCompat.Builder的文档,可以看到问题setFullScreenIntent

电话上的

Documentation

  

启动而不是将通知发布到状态栏的意图。仅用于要求用户立即关注的极高优先级通知,例如用户明确设置为特定时间的来电或闹钟。如果此设施用于其他设施,请为用户提供关闭并使用正常通知的选项,因为这可能会造成极大的破坏。

     

在某些平台上,系统用户界面可能会选择在用户使用设备时显示抬头通知,而不是启动此意图。

您应该从构建器中删除setFullScreenIntent