应用程序因内存使用率过高而崩溃

时间:2018-04-11 13:44:41

标签: android memory crash

我正在创建一个有api命中的活动。 但是,当我打开3-4次活动时,它开始崩溃并显示:

Background sticky concurrent mark sweep GC freed 46562(2MB) AllocSpace objects, 0(0B) LOS objects, 15% free, 13MB/15MB, paused 7.087ms total 41.571ms


Skipped 241 frames!  The application may be doing too much work on its main thread.


Skipped 356 frames!  The application may be doing too much work on its main thread,

在android profiler中,我发现它在完成活动时没有释放内存,并且在再次打开活动时使用更多内存导致高内存使用并最终导致崩溃。

我已经尝试了所有搜索过的google,stackover flow,android hive但没有任何效果。

1 个答案:

答案 0 :(得分:0)

我认为你应该总是在后台线程中进行异步调用,例如调用API。在主线程上处理太多任务会导致由于垃圾回收GC freed 46562导致的性能问题。当你点击API时,确保你没有保留上下文或任何可能导致泄密的东西。如果你展示你的代码,也许我可以帮助你。