Android Studio:内存不足错误(Activity 生命周期?)

Android Studio: Out of Memory Error (Activity Lifecycle?)

我正在创建的应用程序在主 activity 中有 3 个按钮。单击时,每个按钮都会转到不同的 activity,并带有可绘制的动画。

当我单击其中一个按钮时,会按预期出现带有可绘制动画的 activity。如果我返回主 activity 并单击另一个按钮,会弹出一个消息框,上面写着 "Unfortunately, Application has stopped".

这是logcat给出的错误:

java.lang.OutOfMemoryError: Failed to allocate a 8294412 byte allocation with 4194304 free bytes and 6MB until OOM

我认为这可能与 activity 生命周期有关。这三个按钮通过一个 switch 语句工作,该语句启动每个关联的按钮 activity,我尝试将 finish();onDestroy(); 放在似乎每个逻辑位置都没有运气。

我的另一个想法是只有一个 activity,但根据按下的按钮将不同的动画传递给此 activity。但我认为这种方法需要进行相当多的代码更改。

问题可能在于这些动画的大小以及加载第二个动画而第一个动画仍在内存中的时间。您应该在 onResume 中初始化动画并在 onPause 中将其从内存中清除,以确保动画仅在需要时消耗资源。