`
handsomeliuyang
  • 浏览: 314909 次
  • 性别: Icon_minigender_1
  • 来自: 益阳
社区版块
存档分类
最新评论

FLAG_ACTIVITY_NEW_TASK和affinity亲和力

 
阅读更多

  一直以为在intent里加了FLAG_ACTIVITY_NEW_TASK标记,启动的Activity会被加入一个新的Task栈里,这种理解是错误的。

  加了这个FLAG_ACTIVITY_NEW_TASK标记,不一定会启动一个新的栈,其步骤是:先查找有没有和这个Activity的affinity相同的task栈,如果有,则直接在这个task栈里启动,不然才创建一个新的task栈。

详情请看:http://www.cnblogs.com/newcj/articles/1981964.html

分享到:
评论

相关推荐

    android activity和task

    - 当使用`Intent.FLAG_ACTIVITY_NEW_TASK`启动Activity时,系统会检查是否有与Activity Affinity相同的Task,如果有,就将Activity添加到那个Task,否则创建新的Task。 4. Manifest文件中的Activity属性: - `...

    android退出所有Activity并且不弹出对话框实现

    这段代码会启动主屏幕(ACTION_MAIN),同时设置`FLAG_ACTIVITY_NEW_TASK`和`FLAG_ACTIVITY_CLEAR_TASK`标志。`FLAG_ACTIVITY_NEW_TASK`创建一个新的任务,而`FLAG_ACTIVITY_CLEAR_TASK`会清除当前任务栈,包括栈顶...

    Android 如何在自己的应用中模拟Home键

    而设置`FLAG_ACTIVITY_NEW_TASK`标志,配合`ACTION_MAIN`和`CATEGORY_HOME`,可以让Activity的行为类似Home键,使当前Activity进入后台,而不立即结束。 总的来说,通过模拟Intent的启动方式,我们可以实现Activity...

    Activity,回退栈,Task之间的关系

    - 跨应用启动 Activity 时,可以通过设置 `Intent` 的标志符(如 `FLAG_ACTIVITY_NEW_TASK`)以及配置 Activity 的 `taskAffinity` 来控制 Activity 是否位于一个新的 Task 中。 - 默认情况下,Activity 的 `...

    android singleTask

    5. **Activity的启动顺序**:在Android中,启动Activity的顺序是由Intent的`FLAG_ACTIVITY_NEW_TASK`和`FLAG_ACTIVITY_CLEAR_TOP`标志共同决定的。`FLAG_ACTIVITY_CLEAR_TOP`与`singleTask`一起使用时,会清除...

    Android开发指南中文版

    - Affinity决定了Activity在哪个任务中启动,当启动Intent带有FLAG_ACTIVITY_NEW_TASK标志时,会创建新的任务栈。 9. **加载模式**: - 包括标准模式(Standard)、单实例模式(SingleInstance)、单任务模式...

    安卓开发-模拟Activity进出栈.zip.zip

    通过Intent可以指定启动Activity的方式(比如FLAG_ACTIVITY_NEW_TASK等)以及传递数据。 4. **Task Affinity**: Task Affinity决定了Activity归属哪个Task,通常情况下Activity与所属的应用程序在同一Task中,但...

    安卓Android源码——模拟Activity进出栈.zip

    3. **FLAG启动标志**:在启动Activity时,可以设置各种FLAG,如FLAG_ACTIVITY_NEW_TASK、FLAG_ACTIVITY_SINGLE_TOP等。这些标志会影响Activity的栈管理行为,例如是否创建新的任务栈或者在当前栈顶复用已存在的...

    Android应用源码之9.Activity高级学习-IT计算机-毕业设计.zip

    10. **Intent.FLAG_ACTIVITY_***:Intent的标志位如FLAG_ACTIVITY_NEW_TASK、FLAG_ACTIVITY_CLEAR_TOP等,可以改变Activity启动的行为,如创建新任务、清除栈顶Activity等。 通过这个项目,你可以深入研究和实践...

    android 中文开发指南

    使用Intent的FLAG_ACTIVITY_NEW_TASK标志可以启动新的任务,而FLAG_ACTIVITY_RESET_TASK_IF_NEEDED则会在已有的任务中重置任务状态。 **进程和线程 (Processes and Threads)** **进程 (Processes)** Android系统...

    android 开发指南中文版

    12. **启动任务**:使用Intent的FLAG_ACTIVITY_NEW_TASK标志可以启动新的任务,而FLAG_ACTIVITY_RESET_TASK_IF_NEEDED则会在必要时重置任务。 13. **进程和线程**:Android应用程序默认运行在一个进程中,但可以...

    面试题 目 精心选择

    - `FLAG_ACTIVITY_NEW_TASK`:将Intent指向新的任务,并且如果有必要的话,创建一个新的任务。 #### 二、Activity与Task启动模式及其含义 - **Activity启动模式**:Activity可以通过四种不同的启动模式来控制其在...

    分析如何安全退出多个Activity 多种方式

    在Android应用开发中,正确管理和安全退出多个Activity是至关重要的,因为这直接影响到用户体验和应用的性能。本文将深入探讨几种常见的方法来实现这一目标,同时确保应用在退出时资源得到妥善释放,避免内存泄漏等...

Global site tag (gtag.js) - Google Analytics