按home键使程序在后台运行,其间程序间隔几分钟执行连接服务器的任务,在两个小时内,点击程序图标能正常进入程序并显示之前运行的界面,但是两个小时后,点出程序图标时,没有显示之前的界面,而是程序重新启动了(比如显示splash界面),似乎程序在后台运行一段时间后被系统关掉,这什么原因?

解决方案 »

  1.   

    android内存管理 有关吧 
    下周也得做个与lz类似的东东  纠结呀
      

  2.   

    Android系统有自动回收资源你可以把你的程序写个Service在后台运行,而Activity是有生命周期的,一般按Home键是挂后台的,这个Acitivity是否被系统回收,依赖于系统内存是否吃紧了,如果吃紧的话,就有可能被回收了
      

  3.   

    一般来说,启动运行一个程序是有一定的时间开销的,因此为了 加快运行速度,当你退出一个程序时,Android并不会立即杀掉它,这样下次再运行该程序时,可以很快的启动。随着系统中保留的程序越来越多,内存肯定 会出现不足,这个时候Android的 "LowMemory Killer",由程序的重要性来决定杀谁。通俗来说,谁不干活,先杀谁。Android将程序的 重要性分成以下几类,按照重要性依次降低的顺序:前台程序,可以理解为你正在使用的程序
    用户可见的程序
    后台服务,比如说QQ会在后台运行服务
    HOME,就是主界面
    被隐藏的程序
    内容提供者CONTENT_PROVIDER
    EMPTY_APP