我从通知开始临时活动,只显示一些短信。无论我设置launchMode=singleInstance或noHistory=true,上次显示的临时活动将在从“最近打开”进入时再次显示。我希望仅在单击通知时才显示临时活动,而不是在“最近打开”中显示。先感谢您。
<activity
android:name=".NotifiticationDialog"
android:launchMode="singleInstance"
android:noHistory="true"
android:theme="@android:style/Theme.Translucent.NoTitleBar" >
Notification notification = new Notification(R.drawable.icon, context.getString(R.string.app_name), System.currentTimeMillis());
Intent intent = new Intent(context, NotifiticationDialog.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
PendingIntent activity = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
notifycation.setLatestEventInfo(context, context.getString(R.string.app_name), message, activity);
notifycation.flags = Notification.FLAG_AUTO_CANCEL;
_nm.notify(NotifiticationDialog.ID, text);
编辑:@Lalit Poptani,我尝试了你的建议,但这不是我需要的。在我使用 android:excludeFromRecents="true" 单击临时活动后,我的应用程序在“最近”中消失了。(用户找不到它,我的所有活动都被排除在外)
编辑:事实:我有 3 个 tmp 活动显示一些文本,就像 toast 一样,2 个是从小部件打开的,它们没有与应用程序堆栈混合。1 是从通知中打开的,它总是从“最近”中单独显示。
<activity
android:name=".AppwidgetDialog1"
android:launchMode="singleInstance"
android:noHistory="true"
android:theme="@android:style/Theme.Translucent.NoTitleBar" />
<activity
android:name=".AppwidgetDialog2"
android:launchMode="singleInstance"
android:noHistory="true"
android:theme="@android:style/Theme.Translucent.NoTitleBar" />
<activity
android:name=".NotifiticationDialog"
android:excludeFromRecents="true"
android:theme="@android:style/Theme.Translucent.NoTitleBar" >