我不确定这个问题以前是否被问过,但我似乎找不到任何参考资料。我希望我能在这里得到一些帮助。
目前,我有一个包含两个活动的应用程序,Activity Main
和Activity Dialog
。
Activity Main
是我的主要活动,当应用程序从主屏幕启动时开始。
Activity Dialog
在清单中声明了<activity style="@android:style/Theme.Dialog">
,因此它看起来像一个对话框。
然后我创建一个这样的通知(不是完整的代码):
Intent notificationIntent = new Intent(ActivityMain.this, ActivityDialog.class);
PendingIntent contentIntent = PendingIntent.getActivity(ActivityMain.this, 0, notificationIntent, 0);
notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);
mNotificationManager.notify(ID, notification);
我试图实现的是,当用户选择通知时,将用户Activity Dialog
显示为一个对话框(包含一些相关信息)。然后,用户可以关闭对话框并继续执行他们正在执行的操作。
不幸的是,这种方式似乎不起作用,因为点击通知会导致Activity Main
首先启动,填满屏幕,然后Activity Dialog
将信息显示为对话框。
有没有什么方法可以创建一个通知来自行启动Activity Dialog
?即使Activity Dialog
不是MAIN活动?
尝试在Intent
上添加FLAG_ACTIVITY_NEW_TASK
作为标志,看看这是否有帮助。我怀疑您看到的是Android将ActivityDialog
启动到运行ActivityMain
的现有任务中。