位置: 编程技术 - 正文

activity lunchmode详解

编辑:rootadmin

推荐整理分享activity lunchmode详解,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

看了网上的博客关于launchmode的介绍自己感觉很凌乱,总结性不强,于是自己亲自动手写了两个应用A和B测试:

本人一下内容都经过实际的测试:(通过两个应用测试)

standard:每次都会新建,每个Task都可以有,且每个Task都可以有多个实例(每个Task都可以有,且可以有多个)

singleTop:当前实例如果在栈顶,就不新建实例,调用其OnNewIntent。 如不在栈顶,则新建实例 (每个Task都可以有,且可以有多个,在栈顶时可复用)

以上两种模式比较简单。

假设两个应用A和B(A的主activity为m1,singleTop为m2,singleTask为m3,singleInstance为m4,;B的主activity为n1)返回键会使应用退出task

singleTask:新建一个Task,如果已经有其他的Task并且包含该实例,那就直接调用那个Task的实例。(只有一个Task中会有)

1)该实例只会存在A应用Task中,如果A应用没有创建,那么会创建一个新的task,此时按home键退出,并且A自己启动的时候发现A的主页面并没有启动而是直接打开该task的m3页面。

2)A应用已经启动且m3存在实例,并且m3上面还有其它的activity,那么如果从本应用或者其它应用再次打开m3时,m3上面的activity都会销毁。

singleInstance:新建一个Task,且在该Task中只有它的唯一一个实例。 (只有一个Task会有,且该Task中只有它)

1)m4不会存在与其主应用A中,也不会存在于打开它的应用B中,m4单独存在于一个task中。

2)B应用打开后,打开m4,如果m4不存在,那么会新建一个task,此时如果按home键,启动A应用会启动A自身的task。

3)如果想启动m4,可以在task列表中发现,会有三个task存在,且m4单独存在一个task中。

activity lunchmode详解

总结:

1)每一个应用都有一个以其主Activity为root的task堆栈。

2)SingleInstance会单独的拥有一个task,不依赖于任何应用的task。(如果A、B应用均已启动,m4也启动,那么系统现在会有三个task,可以查看task列表)

3)SingleTask依赖于自己应用的Task,只会存在于自身的应用当中。(且如果A应用之前没有启动过,那么如果此task没有退出,启动A应用时,m3会作为应用task的root存在,这意味着A的主activity得不到执行)

4)singleTask会结束自己上面的activity。

5)B启动singleTask,会将A应用task移到B的上面来,变为可见task。

6)启动standared和singleTop模式的activity,都只会在自身的task中创建该实例。

7)这次测试发现,系统每次新建一个task都会在之前的基础上加一。(taskid会越来越大)

应用场景暂时略掉

下面用图解释上面的总结:

android base传图片 转:

Android之即时通讯(一)----环境搭建 最近脑子比较乱,还是静下来弄点东西心里比较踏实.在上一家公司也有接触过即时通讯,是用xmpp协议实现的,然后使用openfire服务器,拿来直接用,今天来研

android面试题总结加强版(一) 自己总结的最强android应用面试题集1.activity的生命周期。方法描述可被杀死下一个onCreate()在activity第一次被创建的时候调用。这里是你做所有初始化设置

标签: activity lunchmode详解

本文链接地址:https://www.jiuchutong.com/biancheng/371116.html 转载请保留说明!

上一篇:项目BUG总结2(项目部不足和改进)

下一篇:android base64传图片

  • 简易计税方法的计算公式
  • 汇算清缴需要传什么资料
  • 税控抵减会计分录
  • 可供出售金融资产和交易性金融资产
  • 发生了原材料运进和成品运出,但并未发生所有权
  • 应付账款尾差怎么算
  • 预付房租收到发票怎么做
  • 银行现金支票怎么填
  • 制造费用属于哪一类科目
  • 周转材料摊销属于什么费用
  • 个人持有原始股要交税吗
  • 营改增的优惠政策
  • 购销合同印花税优惠政策
  • 设备安装税率是6%还是9%
  • 资产负债表和利润表的利润不一致
  • 企业重组 资产重组
  • 餐饮业租赁要求
  • 广告服务类企业有哪些
  • txt文档乱码怎么办
  • linux系统怎么关闭端口
  • u盘的重装系统
  • 餐饮的成本核算表格模板
  • php 递归函数
  • php自动下载文件到本地
  • win11 pin失效
  • 退税到账怎么做账
  • 企业的党员活动是什么
  • PHP:oci_field_is_null()的用法_Oracle函数
  • 土地增值税的具体规定
  • 债务人以固定资产债务重组
  • 代开专用发票的流程资料要求
  • 会计核算的方法主要有
  • 增值税专用发票上注明的价款含税吗
  • php use function
  • 应收债权与应付债务
  • yolov3训练
  • php如何调用类
  • 简单解决微信文案的方法
  • vue前端面试官常问的问题
  • PHP+mysql+ajax轻量级聊天室实现方法详解
  • 增值税发票没认证可以退回吗
  • 外币财务报表的未分配利润
  • 开了红字发票申请还要做进项税转出吗
  • 所得税汇算清缴调整项目
  • 资信证明好开吗
  • 销售收入和销售收入净额的区别
  • 金蝶怎么增加职员
  • 建筑企业异地施工预缴企业所得税
  • 收货和入库的区别
  • 小规模纳税人可以开票吗?
  • 总分类账的登记依据和方法取决于企业所采用的
  • 公司利润如何提取避税
  • 私立幼儿园规模标准
  • 车辆罚款单可作为费用报销吗
  • 差旅费属于其他费用吗
  • 对公受托理财申购怎么写
  • 购入固定资产的会计科目
  • 银行扣的账户管理费属于什么科目
  • 外汇账户具体包括哪些
  • 当期损益包括哪些科目指的
  • b-树和b+树都能有效地支持随机检索
  • sql修改表增加列
  • ubuntu怎么更改用户名
  • fedora怎么安装软件
  • unable to boot - please use a kernel appropriate for your cpu的解决方法
  • rsync 教程
  • 苹果mac 最新系统
  • centos配ip的方法
  • 基于nodejs的项目
  • js设置导航固定
  • node.js怎么用
  • shell脚本-lt
  • python程序讲解
  • nvm-windows
  • jquery设置禁用
  • javascript编程技术
  • JavaScript ParseFloat()方法
  • 个体工商户税务年报网上怎么申报
  • 税务谈心谈话记录2021
  • 航天金税开票软件服务费可以抵扣税款吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设