当Activity停止时,Android是否清理Activity的成员变量

时间:2016-03-23 13:32:23

标签: android android-activity

我有一个Activity,我在onCreate()初始化一个类成员变量。在某些情况下,我需要startActivity(),这意味着此Activity会变为停止状态。当我回来时,我需要使用变量。

这在大多数手机中都可以正常使用,但我的用户也会遇到一些崩溃,因为会员在手机上变成了null。该成员只包含一些String和一个POJO

Android是否清理Activity的成员变量以释放内存?

1 个答案:

答案 0 :(得分:3)

如果调用onDestroy,即使活动未完成,也会清除这些成员变量。您可以通过在开发人员设置中启用“不要保持活动活动”来模拟此操作。一旦启用,启动您的活动,然后暂停它(即点击主页按钮)

要解决此问题,您需要将这些成员变量存储在onSaveInstanceState中,然后使用onCreate中的savedState包恢复它们