码迷,mamicode.com
首页 > 移动开发 > 详细

android home按键和SingleTask的问题

时间:2014-09-04 16:40:19      阅读:269      评论:0      收藏:0      [点我收藏+]

标签:des   android   style   blog   color   os   io   ar   art   

1、先说现象

现在有三个activity:FirstActivity、SecondActivity和ThirdActivity,并且FirstActivity为启动入口

即FirstActivity在AndroidManifest.xml中配置有

<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>

一、给FirstActivity添加LaunchMode="SingleTask"

(此时SecondActivity和ThirdActivity加不加LaunchMode="SingleTask"效果一样)

进入应用到ThirdActivity或者SecondActivity然后按HOME键

①在桌面上点击应用图标进入应用会发现还是进入了FirstActivity,并且此时的SecondActivity和ThirdActivity

   分别调用了onDestory()方法。

②长按HOME键进入应用没有进入FirstActivity,而是打开了应用最后一次打开的activity,并且此时调用了最

  后一次打开的activity的onRestart->onStart->onResume方法。

③在FirstActivity的onCreate方法中添加延迟finish的处理,比如

new Handler().postDelayed(new Runnable()
{
public void run()
{
finish();
}
}, 1500);

之后在桌面上点击应用图标进入应用会发现还是进入了FirstActivity,但是这是一个新的实例,之前的已经finish掉了,所以此时的SecondActivity和ThirdActivity

并不会调用onDestory()方法。

二、去掉FirstActivity的LaunchMode="SingleTask"

(此时SecondActivity和ThirdActivity加不加LaunchMode="SingleTask"效果一样)

在任何一个界面按HOME键,然后不管是从桌面打开应用还是长按HOME键打开应用都是

进入到应用最后一次打开的activity。

2、具体原理有待进一步研究,有明白原理的童鞋请支招,不胜感激!

android home按键和SingleTask的问题

标签:des   android   style   blog   color   os   io   ar   art   

原文地址:http://www.cnblogs.com/yushilong/p/3956202.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!