“应用程序基础知识”教程中的Activity lifecycle部分指出,有3种状态:
An activity has essentially three
states:
(1.活动/正在运行2.暂停3.停止)
但是,当我继续阅读实际的Activity类文档时,Activity Lifecycle部分指出有4种状态:
An activity has essentially four
states:
(1.活动/运行2.暂停3.停止4.“掉线”?)
两个消息源(在同一网站上)都同意前三个,但是第四个仅在类文档中提到,并且未命名.
那么,真的有4个州还是只有3个州?
如果有4,那么第四个的名称是什么?
请帮助我了解这种差异.
同样,this beautiful and very informative flowchart中突出显示的彩色块似乎与状态不对应.在the flowchart中,您将在哪里标记3个或4个状态?
解决方法:
我将其描述为三个状态.第四个“状态”不存在,因为Android可能会破坏活动以释放RAM.但是,如果仍然可以通过“返回”按钮到达该活动,则Android将通过onSaveInstanceState()挂在Bundle上,并在重新创建活动时使用它.如果您希望将此缓存的Bundle视为“状态”,则不会打扰,但这不是我通常描述的方式.
Also, highlighted colored blocks in this beautiful and very informative flowchart don’t seem to correspond to the states.
通常,该图显示了生命周期方法的顺序.正如您所说,它是流程图,而不是状态图.
Where, in the flowchart, would you mark the 3 or 4 states?
我不会但是,活动/运行状态是绿色的“活动正在运行”气泡,暂停状态是白色的“活动不再可见”气泡,停止状态将介于onStop()和onDestroy()之间.不存在的“状态”将是红色的“进程已被杀死”气泡.