活动状态
每个活动在其生命周期中最多可能会有4种状态。
- 运行状态:
当一个活动位于返回栈的栈顶时,这时活动就处于运行状态。系统最不愿意回收处于运行状态的活动,因为这会带来非常差的用户体验
- 暂停状态:
当一个活动不再处于栈顶位置,但仍然可见时,这时活动就进入了暂停状态。
问题:既然已经不处于栈顶,为什么会可见:
因为并不是每一个活动都会占满整个屏幕的,比如对话框形式的活动只会占用屏幕中间的部分区域
处于暂停状态的活动仍然是完全存活着的,系统也不愿意回收(用户体验问题)
只有在内存极低的情况下,系统才会考虑去回收这种活动
- 停止状态:
当一个活动不再处于栈顶位置,并且完全不可见时,就进入了停止状态
系统仍然会为这种活动保存相应的状态和成员变量,但是这并不是完全可靠的,当其他地方需要内存时,处于停止状态的活动有可能会被系统回收
- 销毁状态:
当一个活动从返回栈种移除后就变成了销毁状态。系统会最倾向于回收处于这种状态的活动,从而保证手机的内存充足