android:clearTaskOnLaunch 的用法
关于 android:clearTaskOnLaunch
,网上的资料很少,唯一有几个资料,还说得很含糊,看着让人摸不着头脑,今天硬着头皮看了下英文文档,再结合自己的尝试,终于是稍微理解了它的用处。
默认情况下,android:clearTaskOnLaunch
的值是 false
此时,比如你的应用里有 N 个 Activity,其中有个是设置页面,你从主页面进入到设置页面设置了一些东西之后,突然,按了下 Home 键,回到了 Android 的 Home,这时候你做了些别的事情,然后你再次点击你的应用程序图标进入你的应用程序的时候,依旧是回到设置页面,继续先前的工作,这也是大多数应用的情况。
但是,如果你把 android:clearTaskOnLaunch
的值设为 true
呢?顾名思义,它就在启动的时候把 Task 给清空了,就是你再次点击应用程序图标进入你的应用程序的时候是回到应用程序的第一个页面,而不会回到先前的设置页面。也就是说不保存先前的设置状态。
至于,什么情况下要这么用,我还没想到,像谷歌的 Zxing 项目,也就是 Android 上的“条码扫描器”,它就是这样的,不管你什么时候重新进入该应用,它显示的都是扫描的界面。
不过呢,我也发现了个意外情况,就是即使你把 android:clearTaskOnLaunch
的值设为了 true
,但是在 Home 界面长按 Home 键,可以调出一个你最近进行的任务,从那个里面点击你的应用是可以回到先前保留的状态的,也就是无视 android:clearTaskOnLaunch
了,至于为什么,目前还没搞明白,有兴趣的可以去官方查看一下文档,我没有仔细去看。
关于 android:clearTaskOnLaunch
的 官方文档
另外,今天更新了下 ADT 20,感觉还不错,Windows 下模拟器的程序图标变了,比以前可爱了,呵呵。以前好像是没图标还是怎么地,完全没印象。这个图标倒还是让人印象深刻。
2012-07-02 补充:
前几天搞得焦头烂额,我下了一个开源的项目,在里面把所有的 android:clearTaskOnLaunch
全部删除了,可结果还是重新进入的时候从第一个 Activity 开始,我就纳闷了,纠结了,百思不得其解,以为是应用程序更新的时候,有些地方没有完全更新,然后卸载了,重新安装调试,还是这样。没办法,认真检查所有代码,结果发现了这么个东西:intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
它在启动每个 Activity 的时候加了个 Flag,Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET
,也达到了那样的效果,删掉,然后就是一般的效果了,也就是不管什么时候重新进入应用,进入的是先前停留的地方。嗯~搞定!
Eclipse Juno 下搭建 Android 开发环境
2012-07-02
Eclipse 官方 28 日正式发布了 Eclipse 4.2,代号 Juno。同时,Eclipse 也宣布将使用 Eclipse 4.2 来开发以后的 Eclipse 版本。因此,在我升级 Eclipse 的同时,我也来制作一个 Juno 下搭建 Android 开发环境的教程,其实跟以往的教程是没多大区别的,只是比较新一点儿而已。
进一步完善了网站结构并做了一些 SEO 优化
2012-06-23
早上起来也没闲着,打开百度、谷歌,搜搜“好易思特”,看看收录情况如何,感觉还是不大给力,并没有达到我的要求。仔细反思反思,感觉还是没有做 SEO 优化的问题,之前看到过一些文章,并没有在意。我一直是拿“陌陌”的主页来学习借鉴的,发现,在百度搜索“陌陌”的时候,它的网站链接下面有一段说明文字,是“陌陌(momo)是一款基于地理位置的移动社交工具,你可以通过陌陌……”之类之类的,我打开它的首页,并没有发现这段文字,很纳闷,于是看它网页的源码,发现了这两个标签: