android任务栈

1.启动任务栈     第一种,动作设置为“android.intent.action.MAIN”,类别设置为“android.intent.category.LAUNCHER”, 可以使这个ACT(activity)实例称为一个任务栈的入口,拥有这种类型的intent-filter的ACT类型的图 表和名字也会显示在application launcher中。     第二种,即是采用用“singleInstance”模式,另外开个一个唯一ACT的栈,

提示:如果“singleInstance”模式同时还加上上面的类型,则当前ACT也是一个单独ACT的任务栈,而应用其他ACT会组成另外一个任务栈

2.启动模式 <activity>标签的launchMode属性可以设置为四种不同的模式: “standard”   :(默认模式)反复创建新实例,如A-B-A-C-D-B-A…依次随便加 “singleTop” : 避免出现类似A-B-C-D-D…,如D采用"singleTop",则是A-B-C-D  “singleTask”:    如A采用"singleTask",则在“standard”中类似A-B-C-D-A任务栈,在“singleTask”只会剩下A,BCD都会被回收 “singleInstance” :  此模式你另外开个一个任务栈,且单独只有一个ACT

3.清理任务栈 默认:如果一个任务栈在很长的一段时间都被用户保持在后台的,那么系统就会将这个任务栈中除了根ACT以外的 其它所有ACT全部清除掉。当用户再将任务栈切换到前台,则只能显示根activity了。     1)alwaysRetainTaskState属性     如果将根ACT的alwaysRetainTaskState属性设置为“true”,则即便一个任务栈在很长的一段时间都被用户 保持在后台的,系统也不会对这个任务栈进行清理。     2)clearTaskOnLaunch属性     如果将根ACT的clearTaskOnLaunch属性设置为“true”,那么只有这个任务栈切换到了后台,那么系统就会 将这个任务栈中除了根ACT以外的其它所有ACT全部清除掉。即和alwaysRetainTaskState的行为完全相反。     3) finishOnTaskLaunch属性     这个属性的行为类似于clearTaskOnLaunch,但是此属性作用于单个的ACT对象,而不是整个任务栈。当这个 任务栈切换到了后台,这个属性可以使任务栈清理包括根ACT在内的任何ACT对象。 

4.还复杂点可以加入亲属关系taskAffinity 总结:简单的说,即是开一个(或几个)任务栈,在每个任务栈上添加ACT,遇到“singleTask”的则回到之前存在的ACT,把夹在中间的ACT全部回收

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏SAP最佳业务实践

SAP最佳业务实践:FI–总账(156)-7周期性分录

4.10 周期性分录 本功能支持可以定期创建的过帐。周期性分录类似于银行长期订单,用于扣除租金、缴纳付款、或直接的贷款偿还。周期性分录程序将基于周期性分录凭证...

43760
来自专栏iOS122-移动混合开发研究院

写给iOS小白的MVVM教程(一): 从MVC到MVVM之一个典型的MVC应用场景

前言 本着实践为主的原则,此系列文章不做过多的概念性的阐述和讨论;更多的代码和篇幅用来展示MVC和MVVC下的基础代码结构与具体实现,来展示各自优劣.这篇文章,...

41270
来自专栏公众号_薛勤的博客

Android开发常用权限设置

转载:https://www.cnblogs.com/classic/archive/2011/06/20/2085055.html

11020
来自专栏Android源码框架分析

Android权限管理原理(4.3-6.x)

Android系统在MarshMallow之前,权限都是在安装的时候授予的,虽然在4.3时,Google就试图在源码里面引入AppOpsManager来达到动态...

40470
来自专栏开发之途

Android Permission访问权限大全

22960
来自专栏刘望舒

Android包管理机制(一)PackageInstaller的初始化

34930
来自专栏知识分享

Android6.0权限大全和权限分类

https://blog.csdn.net/qq_26440221/article/details/53097868

66130
来自专栏xingoo, 一个梦想做发明家的程序员

关于jboss的线程问题+java.lang.outofmemoryError

    近日来,用Jmeter做压力测试。发现,每台客户机使用800个线程组压力倍增。昨天的测试,到了今天下午都没有跑完。 仔细观察了下Jboss的错误日志,发...

23180
来自专栏移动端开发

iOS 测试三方 KIF 的那些事

一: KIF 三方库的配置       今天的广州天气还不错,原本想试试UI测试的,前几天也了解到很多公司都在用 KIF 这这三方框架!!今天也就试着做做,可就...

25960
来自专栏贾志刚-OpenCV学堂

OpenCV3.2集成Android Studio2.2开发配置

主要知识点 OpenCV4Android3.2 SDK介绍与下载 AS2.2与OpenCV3.2集成 程序演示与代码 AS集成OpenCV3.2配置常见错误 O...

47060

扫码关注云+社区

领取腾讯云代金券