FLAG_ACTIVITY_NEW_TASK 比较标准解释如下:

首先会查找是否存在和被启动的Activity具有相同的亲和性的任务栈(即taskAffinity,注意同一个应用程序中的activity的亲和性相同),如果有,则直接把这个栈整体移动到前台,并保持栈中旧activity的顺序不变,然后被启动的Activity会被压入栈,如果没有,则新建一个栈来存放被启动的activity,注意,默认情况下同一个应用中的所有Activity拥有相同的关系(taskAffinity).

作者:3Q竹林
链接:https://www.jianshu.com/p/890d8897caf4
来源:简书

了解任务和返回堆栈  |  Android 开发者  |  Android Developers (google.cn)

例1:Activity收到两个Intent

MainActivity(standard)发送两个Intent给FirstActivity(singleTask),FirstActivity的OnNewIntent()接收数据,未创建新的实例

生命周期:

MainActivity onCreate
MainActivity onStart
MainActivity onResume
MainActivity onPause
FirstActivity onCreate
FirstActivity onStart
FirstActivity onResume
FirstActivity onPause
FirstActivity onNewIntent: data MainActivity -> FirstActivity
FirstActivity onResume
MainActivity onStop

例2:栈中已有的Activity再次收到Intent

画面跳转:MainActivity(standard)->FirstActivity(singleTask)->SecondActivity(standard)->FirstActivity(singleTask)

FirstActivity未创建新的实例,调用onNewIntent()方法

生命周期:

MainActivity onCreate
MainActivity onStart
MainActivity onResume
MainActivity onPause
FirstActivity onCreate
FirstActivity onStart
FirstActivity onResume
MainActivity onStop
FirstActivity onPause
SecondActivity onCreate
SecondActivity onStart
SecondActivity onResume
FirstActivity onStop
SecondActivity onPause
FirstActivity onNewIntent: data SecondActivity -> FirstActivity
FirstActivity onRestart
FirstActivity onStart
FirstActivity onResume
SecondActivity onStop
SecondActivity onDestroy

例3:后台任务中的Activity实例

Activity启动模式之SingleTask模式各种跳转相关推荐

  1. Android Activity启动模式,回退栈管理!

    (一): Activity被回收了怎么办?当系统内存不足的时候Activity是有可能被回收的,打个比方用户在A Activity启动了B Activity那么A就处于停止状态,由于内存不足A会被回收 ...

  2. Activity 启动模式以及常见的启动Flag

    提前致谢:感谢广大互联网大佬记录知识借鉴. 一.Activity的4种启动模式: 1.android:launchMode="standard" 标准启动模式.这种启动模式也是Ac ...

  3. Activity启动模式完全解读-更新中

    在实际的项目中我们应当根据特定的需求为每个Activity指定恰当的启动模式. 启动模式分为四种,分别是standard.singleTop.singleTask.singleInstance. 可以 ...

  4. android activity启动模式_从0系统学Android--2.5Activity启动模式

    本系列文章目录:更多精品文章分类 本系列持续更新中-. Activity 的启动模式一共有四种,分别是:standard.singleTop.singleTask.singleInstance .在实 ...

  5. activity 启动模式_腾讯大牛:你根本不懂Activity!

    码个蛋(codeegg)第 583 次推文 作者:厘米姑娘 原文:https://www.jianshu.com/p/602b1ec4ca7a 在之前的Activity篇主要学习Activity的生命 ...

  6. Android初级开发笔记-- activity启动模式的学习(1)

    第一次学习Android中一个很重要的概念,启动模式.文章记录的也只是一些入门知识,随着学习的深入还会有activity启动模式的学习(2)和(3). 下面分三个小点说一下对启动模式的理解区别以及如何 ...

  7. activity 启动模式_Android世界:Activity的启动模式及其适用范围

    一.Activity启动模式简介 activity启动模式,可以理解为activity在任务栈(也叫"回退栈")的回退规则,即点击"back"键时,activi ...

  8. activity 启动模式_Intent#FLAG_ACTIVITY_CLEAR_TOP 真的会 clear top 吗

    一.背景 前段时间处理了一个 App 内草稿丢失的反馈,很多用户反馈连续存了多个草稿之后,草稿箱都只有一个草稿,显然是发生了草稿丢失.从用户反馈的数据来看,反馈用户的系统版本都在 Android 7. ...

  9. Android Activity启动模式总结

    简介 Activity 作为 Android 四大组件之一,几乎是被接触得最多的.Activity 中有个启动模式的概念,分别是 standard.singleTop.singleTask 以及 si ...

  10. Activity启动模式 launchMode

    2019独角兽企业重金招聘Python工程师标准>>> 转载 http://blog.csdn.net/zhangjg_blog/article/details/10923643 s ...

最新文章

  1. python学习干货教程(5):#!/usr/bin/python
  2. 开源中国iOS客户端学习——(五)网络通信ASI类库(1)
  3. PYTHON爬取66影视的电影下载链接,有搜索功能
  4. Java 8 开发的 4 大顶级技巧
  5. 《Orange’s 一个操作系统的实现》1.搭建操作系统开发环境
  6. [vue] 为何官方推荐使用axios而不用vue-resource?
  7. 图Graph--寻找二度好友(BFS应用)
  8. 冷知识:数学常数“e”的传奇故事
  9. 用python numpy实现幻方
  10. Python 解释器中使用help()命令如何退出
  11. 票务系统开发_景区票务系统部署到底是SaaS还是本地化呢?
  12. 两个向量的点乘和叉乘怎么算_【解析几何】赋值法(点乘双根法)解决解析几何大题...
  13. Java中的Bean是什么?
  14. Redis 解决了哪些问题?
  15. Golang go-svc包源码分析
  16. 改革IMF首先要增加中国发言权
  17. linux系统相关文件夹讲解,Linux中重要文件夹介绍PPT课件
  18. 仿淘宝头像上传功能(一)——前端篇。
  19. # 技术栈知识点巩固——Js
  20. the oracle of bacon,python爬虫之遍历单个域名

热门文章

  1. 怎么给服务器部署php探针,phpStudy学习之php探针
  2. coreplayer n79下载_coreplayer
  3. linux 网络对时
  4. Zabbix结合Mojo-Webqq实现告警
  5. 2021-06-18
  6. vi打开GBK编码文件乱码问题
  7. 自动量程万用表的实现原理_电子元器件用指针万用表、数字万用表、自动量程万用表测量原理图解大全教会您怎么看与测的呢?...
  8. mysql 中用select建表_用 SELECT 的结果创建表
  9. Editplus 破解
  10. ALSA声卡驱动(二)声卡创建