activity launchmode
来源:互联网 发布:防晒霜推荐 知乎 编辑:程序博客网 时间:2024/05/23 02:03
1.standard:
每次都是新的activity对象。
2.singletop:
栈顶单例。
特征:如果栈顶有此activity实例,当用startActivity调用此activity时,会复用这个activity,并调用onNewIntent() 刷新intent数据。
应用场景:notification启动的activity。
例子:网易新闻的具体网页所在的activity,
操作:打开网易新闻,打开某个具体新闻页,当有新的新闻出现在notification中时,点击notification,这时会刷掉之前所看的新闻,按back键,返回到新闻主页面。
3.singleTask:
栈单例。
特征:如果栈中有此activity实例,当用startActivity调用此activity时,会复用这个activity,通过clear掉此activity之上的所有activity的方式将此activity置于栈顶,并调用onNewIntent() 刷新intent数据。
应用场景:会被多个应用使用的app的main activity。
例子: 浏览器
操作:打开浏览器,输入某一网址,然后打开设置界面,按home键切出应用。点击微信,点击某一个网页消息进入,点击菜单,选使用浏览器打开。选择刚才的浏览器点击打开,此时会显示新的网页内容,点击back键会退出浏览器。相同的操作,用qq操作,结果一样。
4.singleInstance:
系统单例。
特征:如果栈中有此activity实例,当用startActivity调用此activity时,会复用这个activity,并调用onNewIntent() 刷新intent数据。
应用场景:和任何activity都没有逻辑关系(包括它所在的app)的activity
例子:闹钟
操作:打开闹钟设置界面,按home键进入微信,此时闹钟响了,进入闹钟提示界面,按返回键,回到微信界面。闹钟提示界面和任何app都没有逻辑关联,包括它自己所在的app。
2,3,4 复用时会调用onnewintent()
application, task, activity 的关系?
task是任务的概念 本质是个栈 一个task任务对应一个acivity集合;通过配置activity的android:taskAffinity来控制。
一个task中可以有多个应用的activity。
application是应用的概念,一个application可以有多个task任务(多个栈),默认的application里的activity都在一个栈中。
多任务控制?
android:allowTaskReparenting
是否允许此activity,回到原来的task栈中,认祖归宗,默认false,保留在启动task中。仅限于standard”和“singleTop”模式。
android:alwaysRetainTaskState
是否保持task状态,默认false,清除root activity 以外的activity。 只适用于根activity。如浏览器mainActivity设置。
android:clearTaskOnLaunch
启动时是否清除task,默认false。只适用于根activity。不想保存task状态。
android:finishOnTaskLaunch
这个属性和android:allowReparenting属性相似,不同之处在于allowReparenting属性是重新宿主到有共同affinity的task中,而finishOnTaskLaunch属性是销毁实例。
android:configChanges
在Activity中添加了 android:configChanges属性,目的是当所指定属性(Configuration Changes)发生改变时,通知程序调用 onConfigurationChanged()函数。
TaskAffinity:activity所在task栈的标记。是否属于某一逻辑关系task里。
- Activity launchMode
- Activity launchMode
- activity launchmode
- activity launchMode
- Activity launchMode
- activity launchMode
- Activity的launchMode
- Activity的launchMode
- Activity的launchMode
- Android Activity LaunchMode 验证
- Activity LaunchMode & TaskAffinity
- Android Activity的launchMode
- Activity的launchMode
- Android Activity launchMode Test
- Activity的launchMode总结
- activity之launchMode
- android activity launchmode
- Activity LaunchMode和addFlags
- TALEN、ZFN以及CRISPR/Cas
- gotomeeting给您带来全新的生活
- php - cookie
- MFC中的GDI绘图
- android 返回 到FragmentTabHost 某一个tab时报错
- activity launchmode
- iOS 直接显示HTML
- 重力加速计低通滤波算法——安卓开发文档
- Linux:Unable to locate package错误解决办法
- ASP编程入门进阶(十六):FSO组件之驱动器操作
- 用ASP建立站内搜索
- 万网M2-s禁用fsockopen函数解决办法
- 软考基础知识—编译原理
- 加密你的ASP页面—Script Encoder初探