gpt4 book ai didi

java - Android 通知在现有 Activity 上打开

转载 作者:行者123 更新时间:2023-12-01 12:36:13 26 4
gpt4 key购买 nike

我在通知 Intent 方面遇到了麻烦。我有一个创建通知的服务(服务检查消息并创建通知)。应用程序有一个操作栏,用户可以通过滑动菜单在 Activity 之间导航。

/image/YJXe6.png

当用户单击通知时,它会在当前 Activity 上打开一个新 Activity 。(就像一个独立的新实例)。我想在同一实例中打开它们,就像用户手动导航一样(例如在 B Activity 上单击 A)

我当前的 Activity 启动模式是标准的(尽管我尝试了singleTop和singleTask和flags)

当前通知代码:

Intent i = null;
i = new Intent(this, MessagesListActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
PendingIntent contentIntent = PendingIntent.getActivity(this, 0,i, 0);
Builder notificationBuilder = new NotificationCompat.Builder(this);
notificationBuilder.setContentTitle(title);
notificationBuilder.setContentText(msg);
notificationBuilder.setSmallIcon(R.drawable.speech_bubble_orange);
notificationBuilder.setContentIntent(contentIntent);
notificationBuilder.setAutoCancel(true);
NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
Notification notification = notificationBuilder.build();
notificationManager.notify(Constants.UNREADMESSAGESNOTIFICATIONID,notification);

感谢您的帮助。

最佳答案

我解决了这个问题。通过这种组合,新启动的 Activity 可以清除堆栈。我也没有更改启动模式(仍然是标准的)

intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);

关于java - Android 通知在现有 Activity 上打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25559433/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com