防止从android中最近的应用列表运行活动

sha*_*anu 1 android broadcastreceiver android-activity

我有一个活动A,它在收到自定义广播时开始。此活动不是启动器活动。

接收者

@Override
public void onReceive(Context context, Intent intent) {
    Intent i = new Intent(context,A.class);
    i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    i.putExtras(intent.getExtras());
    context.startActivity(i);
}
Run Code Online (Sandbox Code Playgroud)

A 接收意图值(意图有一些值)并完全填充一些任务。整个程序运行良好。

问题是,当我打开最近的应用程序列表(长按主页按钮)时,这个活动出现(不是启动器活动),当我点击它时,活动以意图值开始!!。所以我无法检查这个活动是从广播接收器还是从其他接收器开始。

我怎样才能解决这个问题??此活动应仅在收到广播时开始。

编辑

显现

android:name".A"
android:screenOrientation="portrait"
android:launchMode="singleInstance"
android:noHistory="true"
android:taskAffinity=""
Run Code Online (Sandbox Code Playgroud)

Kri*_*m R 5

你试过了吗:

机器人:名称“.A”

android:excludeFromRecents="true"

这将防止您的活动显示在最近列表中。