excludeFromRecents不适用于taskAffinity

时间:2014-03-06 15:13:33

标签: android android-activity android-manifest android-recents

可能重复How to not show app on recent apps list in ICS? excludeFromRecents doesn't work

假设我有两个活动A(主要活动)和B.我从A开始B如下:

    Intent i = new Intent(A.this, B.class);
    i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(i);

我希望我的应用程序在任何时候都只有一个条目,并且B将在新任务中启动。如果B有一个清单条目如下,我实现了:

    <activity
        android:name="com.example.verysimpleactivity2.app.B"
        android:excludeFromRecents="true"
        android:label="B" ></activity>

但我也希望B拥有与主要活动不同的taskAffinity,即A.所以我将清单条目更改为:

    <activity
        android:name="com.example.verysimpleactivity2.app.B"
        android:excludeFromRecents="true"
        android:taskAffinity=""
        android:label="B" ></activity>

在这种情况下,如果B不在前景中,那么它不会显示在最近,而我只有A(好!)但是,如果B在前景并且我按下了最近按钮,我看到两个A和B那里。为什么在这种情况下B显示在最近?如何确保我根本看不到B?

2 个答案:

答案 0 :(得分:1)

显然,实现我想要的东西是不可能的(至少在KitKat中)。

来源:Android工程师

答案 1 :(得分:0)

有点晚,但也添加了androidManifest activity android:excludeFromRecents的答案。以防万一其他人遇到同样的问题而且无法正常工作。