android 任务列表标签,Android从最近任务列表删除当前activity

如何让Activity不显示在系统的最近任务列表中

最简单的做法,在AndroidManifest.xml的Activity标签中加入excludeFromRecents属性,并设置为true,不加时默认值为false。

android:excludeFromRecents="true"

/>

此属性生效范围,经过验证得出以下结果:A、B、C均表示Activity,测试手机红米7仅A设置excludeFromRecents为true,A启动B,则A、B都不显示在最近任务中

即使B 加上了taskAffinity属性,直接 startActivity(new Intent(context, B.class),B依然不显示

A启动B时,加上Intent.FLAG_ACTIVITY_NEW_TASK标记,最近任务只有B

仅给B设置excludeFromRecents为true,A启动B,A、B的缩略图会出现在最近任务中

也可在Intent中添加标记,效果相同intent.setFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);

此种方法有一点不好的地方就是,按了HOME键之后,Activity是完全不显示在最近任务中,即使它还在运行。

而我当前的需求是,运行的时候要在,finish之后移除。而系统默认情况下finish、killProcess,应用窗口缩略图依然会保留在最近任务中。

高级玩法:使用finishAndRemoveTask()将自己移除最近任务。需要SDK 21以上if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {

finishAndRemoveTask();

} else {

finish();

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值