当应用资源配置发生改变或者系统内存不足时,或者系统内存不足时,Activity可能会被异常的结束。
当系统资源配置发生改变时,活动会被销毁,onPause()、onStop()和onDestroy()方法会被调用,在onStop()之前会调用onSaveInstanceState()保存下当前的状态,当Activity再次被重新创建时,会调用onRestoreInstanceState(),恢复之前的状态。
当系统内存不足时,低优先级的 Activity会被杀死,其中前台活动优先级最高,可见但不是前台的活动次之、最低的是后台活动,那些已经被执行了onPause()发方法的活动。当系统内存不足时,系统会按照这样的优先级去杀死那些活动所在的进程,那些没有四大组件正在运行的进程会很快被杀死,因此一些需要长时间运行的后台工作最好放在四大组件中,防止被系统杀死。
网友评论