在android中,android活动是以栈的方式进行存储,在栈中的活动不断被重新激活至前台和不断被终止也不断被排序。因此对于栈中的活动管理也是一个比较麻烦的事情。

android给我们提供了两类活动启动方式,

1、将活动重新排序,Intent.FLAG_ACTIVITY_REORDER_TO_FRONT

如果启动活动栈中已经存在的活动,则在原栈的基础上将此活动置于栈顶,

如果启动活动栈中不存在此活动,则创建该活动并将其置于栈顶。

2、清除已存在的活动Intent.FLAG_ACTIVITY_CLEAR_TOP

如果启动一个已经存在的活动,会将此活动之上的所有活动全部finish掉。

是否会finish所启动的活动,决定于所启动的活动是multiple还是single,默认是multiple,multiple模式会将所启动的活动给finish,single不会将它finish,而是会调用它的onNewIntent()方法。活动的single与multiple可以通过程序清单声明和在Intent中进行说明intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);

更多相关文章

  1. Android启动(1)启动过程概述
  2. android framework 启动流程
  3. Android内核开发:图解Android系统的启动过程
  4. [Android]基本概念
  5. 在Android设备上运行纯java代码
  6. Android应用程序进程启动过程的源代码分析
  7. Android应用程序进程启动过程的源代码分析
  8. 利用BLCR加快android的启动过程
  9. Android(安卓)Service的生命周期及使用!

随机推荐

  1. Android实现控件View移动控制。
  2. android studio设置debug.keystore
  3. 对TextView ImageView 设置了drawable se
  4. Android(安卓)命令行手动编译打包过程图
  5. Android监控外接USB设备和获取USB等设备
  6. 5分钟理解Android中的上下文!!!
  7. android双击返回键退出程序
  8. 收藏的Android非常好用的组件或者框架
  9. Android(安卓)CheckBox
  10. Android(安卓)TextView文字过多时,通过滚