about FLAG_ACTIVITY_NEW_TASK

立志做一个佳娃~ 2011-12-12 06:13:28
FLAG_ACTIVITY_NEW_TASK:
  之前描述的,一个Activity一般通过调用startActivity()启动并加入到Task中。它同调用者一样,进入同一个Task。然而,如果传递给startActivity()的Intent对象中包含FLAG_ACTIVITY_NEW_TASK时,系统会搜索一个新的Task来容纳新的Activity。通常,如标志的名字所示,是一个新的Task。然而,并不是必须是。如果已经存在一个Task与新Activity的affinity相同,这个Activity就会加入到那个Task中。如果不是,启动一个新的Task。

----------------------
以上是文档的翻译,

1问:如果传递给startActivity()的Intent对象中包含FLAG_ACTIVITY_NEW_TASK时,系统会搜索一个新的Task来容纳新的Activity----------我启动了,但发现task id一样,并没有新建1个task 怎么回事呢?

2问:如果已经存在一个Task与新Activity的affinity相同,这个Activity就会加入到那个Task中。如果不是,启动一个新的Task。-----------什么情况下会出现affinity相同,,“这个Activity就会加入到那个Task中”加到那个task中有什么目的呢??

感谢
...全文
578 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
liao_hb 2014-01-15
  • 打赏
  • 举报
回复
引用 1 楼 yiyaaixuexi 的回复:
不知道你有没有耐心认真读完这篇文章:http://www.cnblogs.com/jerrychoi/archive/2010/05/12/1733654.html
哥们,下面的描述不觉的冲突吗?这篇文章就像好难啃的馒头。
joezhpf 2012-01-06
  • 打赏
  • 举报
回复
2问:如果已经存在一个Task与新Activity的affinity相同,这个Activity就会加入到那个Task中。如果不是,启动一个新的 Task。-----------什么情况下会出现affinity相同,,“这个Activity就会加入到那个Task中”加到那个task中有什么目的呢??
affinity: 可以在 manifest中设置。 Activity/Application 有属性 taskAffinity。如果未设置,默认是,Activity的包名。
-----------什么情况下会出现affinity相同, 你设置为相同,就相同了。

“这个Activity就会加入到那个Task中”加到那个task中有什么目的呢??

实例后的Activity都要放到task中, 【“这个Activity就会加入到那个Task中”加到那个task中有什么目的呢??】 这个就是 寻找 task的过程。 【加到那个Task中】 没有什么目的,是把Actvity放到那个task而已。
一个task实际是一个Activity栈,里面有多个activity。
念茜 2011-12-12
  • 打赏
  • 举报
回复
不知道你有没有耐心认真读完这篇文章:http://www.cnblogs.com/jerrychoi/archive/2010/05/12/1733654.html

80,349

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧