根据文档,Android OS可以终止后台堆栈的活动。公共静态变量和Android活动生命周期管理
因此,举个例子,我有一个应用程序,并打开主要活动(让我们称之为活动A)。在这个公共活动类中,我声明并初始化一个公共静态变量(我们称之为“foo”)。然后,在Activity A的onCreate()方法中,更改“foo”的值。从活动A开始,用户在我的应用程序中启动另一个名为活动B的活动。在活动B中使用变量“foo”。然后在用户导航到其他应用程序中的其他活动后,活动B暂停。最终,在发生内存不足之后,活动A然后活动B可能会被终止。用户返回到我的应用程序后,将重新启动(实际上是“再现”)活动B.
会发生什么:在这一点上
威尔变“富”有被设置为它当值Activity的onCreate()方法运行?
变量“foo”不存在?
变量“foo”存在,但现在是初始化值,而不是在Activity A的onCreate()方法中设置的值?
谢谢你的回答 – jsstp24n5
+1完美答案:) – Lucifer
如果进程没有被杀死,只有活动被破坏(假设某些服务正在运行)会发生什么。当Activity再次开始时,静态变量是否会与上次存储的值一起存在? – Ahmed