gpt4 book ai didi

android - 为什么 excludeFromRecents 会删除所有 Activity ?

转载 作者:IT老高 更新时间:2023-10-28 22:13:49 25 4
gpt4 key购买 nike

我的应用有两个入口点(MainActivity 和 FromNotificationActivity)。

我希望 MainActivity 出现在最近的任务中,而不是 FromNotificationActivity)

list 中没有任何声明,如果我这样做...

  • 主 Activity
  • 返回
  • FromNotificationActivity
  • 返回

...我发现 FromNotificationActivity 列在最近的任务中

如果我在 list 中将 android:excludeFromRecents="true" 添加到 FromNotificationActivity 并重复相同的顺序,我会在最近的列表中发现 nothing

我必须调用什么咒语,以便在上述步骤序列之后,我在最近列表中获得 MainActivity。

最佳答案

默认情况下,应用程序的所有 Activity 都具有相同的亲和性。具有相同亲和力的 Activity 在概念上属于同一任务。因此,在这种情况下,MainActivityFromNotificationActivity 都属于同一个任务。 android:excludeFromRecents 确保任务不在最近的应用程序中列出。这就是原因,当 android:excludeFromRecentsFromNotificationActivity 设置为 true 时,MainActivity 从历史记录中消失。

解决方案:使用 android:taskAffinity 为这两个 Activity 指定不同的任务。如果该任务根本不应该显示在历史记录中,请为 FromNotificationActivity 使用 android:excludeFromRecents

<activity   
android:name="com.example.MainActivity"
android:label="@string/app_name"
android:taskAffinity=".MainActivity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

<activity android:name="com.example.FromNotificationActivity"
android:label="@string/notification_name"
android:taskAffinity=".NotificationActivity"
android:excludeFromRecents="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

关于android - 为什么 excludeFromRecents 会删除所有 Activity ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23713124/

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