繁体   English   中英

Android 通知点击打开应用程序仅第一次有效

[英]Android notification click to open app only works 1st time

我有一个带有通知的前台服务。 我创建这样的通知:

    Notification notification = new NotificationCompat.Builder(this, CHANNEL_ID)
            .setOngoing(true)
            .setContentTitle("App name")
            .setContentText(Utility.getNotificationContentText())
            .setSmallIcon(R.mipmap.ic_launcher_round)
            .setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
            .setContentIntent(pendingIntent)
            .setOnlyAlertOnce(true)
            .build();

在通知中,我设置了一个待处理的意图,如下所示:

    Intent notificationIntent = new Intent(this, MainActivity.class);
    notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
    PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);

当我第一次单击通知时,它按预期工作。 它打开应用程序。 但是,当我第二次单击通知时,没有任何反应。

对于它的价值,我打开 MainActivity.class,但我的应用程序有不同的片段。 我想打开一个特定的片段,但我不确定是否可以将 FragmentName.class 传递给意图。

每次让通知点击工作有什么帮助吗?

设置PendingIntet的以下标志,以便您可以使用新的PendingIntent更新当前未决意图。

PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, notificationIntent, 
              PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_ONE_SHOT);

我设法修复它。 问题是我更新通知的意图是错误的 class。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM