活动从活动堆栈顶部打开的通知开始

Cat*_*san 6 notifications android android-activity

我有一个有多个活动的应用程序.在其中一个,我设置了一个警报.我按下HOME按钮.触发警报时,会显示通知.点击通知时,我开始一个类似对话的活动(@android:style/Theme.Dialog).虽然我在桌面屏幕上,Android会打开我的上一个活动,然后在此基础上显示我的对话式活动.我只想在用户所在的任何地方展示我的对话活动.

有谁知道出了什么问题?

Intent notificationIntent = new Intent(this, NotificationActivity.class);
notificationIntent.putExtra(Constants.EXTRA_ALERT_MESSAGE, contentText);
PendingIntent contentIntent = PendingIntent.getActivity(this, Constants.PENDING_INTENT_REQ_DIALOG, notificationIntent, 0);
no.contentIntent = contentIntent;
Run Code Online (Sandbox Code Playgroud)

Ric*_*ler 13

你可能要设置android:taskAffinityandroid:launchMode="singleTask"为您的对话活动的清单文件.设置taskAffinity将导致Activity在具有自己的堆栈的单独任务中启动.在singleTask可能或不可能完全适合您的应用程序,但你可能会想要么还是singleInstance取决于你的使用情况.您需要阅读文档以确定哪一个适合您.