位置: 编程技术 - 正文

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传图片

  • 半年奖个人所得税怎么算的
  • 一般增值税怎么开票的
  • 税前扣除项目包括
  • 什么是纳税义务人,在理解这一观念时应注意哪些问题
  • 如何计算土地增值税的增值额
  • 更正以前年度费用账务处理
  • 周转材料登三栏式明细账吗
  • 注册资本转出可以吗
  • 行政单位调拨的固定资产申请报告
  • 代缴水电费如何做账
  • 小企业会计准则和一般企业会计准则的区别
  • 短期投资有什么缺点
  • 员工住院的发票可以做账吗
  • 一般企业需要缴纳的税种
  • 贷款买车需要到银行去吗
  • 固定资产租入租金计入什么科目
  • 上月营业外收入少报入了怎么办
  • 境外企业提供国外服务
  • 专利权转让的净收益计入
  • 劳动合同解除和终止的经济补偿
  • 上海2018房产税实施细则
  • 航天开票系统清单流程
  • 小规模纳税人自开专票
  • 合并起来
  • 一般纳税人能用小企业会计准则吗
  • 公司净资产怎么算的
  • 汇兑损益减少怎么记账
  • 污水处理费谁来收
  • 不能升级win11的二手电脑值得购买吗
  • 汇算清缴时研发费用加计扣除怎么做账
  • 怎么写会计凭证
  • 资产负债表的资产总额怎么看
  • 即征即退申报表模版
  • PHP:oci_statement_type()的用法_Oracle函数
  • searchnav.exe - searchnav是什么进程 有什么用
  • 注销公司如何登报
  • 营改增改了什么
  • Netlib.exe - Netlib是什么进程 有什么用
  • php getdate
  • PHP:imagecopymerge()的用法_GD库图像处理函数
  • php不使用内置函数的情况下,输出数组中重复最多的元素
  • 房地产公司收到预售款缴纳印花税吗
  • 资产负债表和利润表的利润不一致
  • 【AutoGPT】你自己运行,我先睡了—— ChatGPT过时了吗?
  • [Vue warn]: Error in render: “TypeError: Cannot read properties of undefined(reading“category1Name“
  • nvme安装win10教程
  • vuex状态机
  • 茶叶一般开多少度保存
  • 小微企业开具增值税专票
  • 织梦添加文章如何修改高级参数
  • 劳务费合同模版
  • centos7阿里云源
  • 食堂购买固定资产会计处理
  • 中小企业发展专项资金亮点 免申即享
  • sql2005数据库
  • 外经证报验登记流程
  • 计提福利费是什么意思
  • 疫情期间公司购买物品
  • 待认证进项税额和待抵扣进项税额的区别
  • 应付票据贴现利息收入会计分录
  • 已核销的坏账又收回预算会计分录
  • 基本户转账法人会知道吗
  • 记帐凭证会计处理程序及其应用
  • 工作地变更社保卡怎么办
  • 预支款怎么做现金账
  • sqlserver 获取字符位置
  • 什么是存储过程?有哪些优缺点?
  • php连接mysql数据库的几种方式及区别
  • 怎么用sql脚本创建数据库
  • linux网络系统管理
  • 运行方式包括什么方式
  • 在Linux系统中安装镜像步骤
  • windows8装 .NET 3.5 时出现0x800F081F错误解决方法
  • python中myf
  • nginx1.16安装
  • linux定时执行任务
  • linux c 线程池
  • linux运行nginx
  • 国家税务局河北省税务局
  • 山东省合格考密码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设