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

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

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

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

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

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

点赞