我不是圆柱之手
你的Activity的launchMode都是singleTask,理论上Activity只能存在一个实例,当再次收到启动的Intent时,直接执行onNewIntent方法。但是singleTask相当于一个进程,很耗内存,一个系统里可以有很多的Task Stack,当后台的Task过多的时候,系统可能会去除栈底的Activity,释放多余的内存。会不会是内存不足被杀死才会重新创建?你要不试下重写onSaveInstanceState方法,看看onSaveInstanceState有没有被调用。
------------------------------------------------------AutoCSDN签名档------------------------------------------------------

解决方案 »

  1.   

    谢谢你的回答,onSaveInstanceState会不会让用户看起来有刷新的效果啊?
      

  2.   

    引用 3 楼 hankcs 的回复:
    我不是圆柱之手
    你的Activity的launchMode都是singleTask,理论上Activity只能存在一个实例,当再次收到启动的Intent时,直接执行onNewIntent方法。但是singleTask相当于一个进程,很耗内存,一个系统里可以有很多的Task Stack,当后台的Task过多的时候,系统可能会去除栈底的Activity,释放多余的内存。会不会是内存不足被杀死才会重新创建?你要不试下重写onSaveInstanceState方法,看看onSaveInstanceState有没有被调用。
    ------------------------------------------------------AutoCSDN签名档------------------------------------------------------
      

  3.   

    看情况了,得做做才知道。要是你能存下所有控件的数据,那就几乎没有,详细的请看http://www.cnblogs.com/hanyonglu/archive/2012/03/28/2420515.html