在这几天里,我一直试图找出为什么我的应用会分配大量内存和崩溃。我打开了一些肯定没有优化的布局。但是我无法弄清楚为什么有时StartActivity()会一次分配高达80MB的内容,以及当我关闭活动时内存不会释放的原因。
我创建了一个充满图像的测试应用程序和两个相互调用的布局。使用Xamarin Profiler,我遇到了这个内存转储,我无法弄清楚是什么叫这个,我怎么能更频繁地为我的真实应用调用呢?
答案 0 :(得分:0)
我无法弄清楚是什么叫这个,我怎么能更经常地为我的真实应用调用它?
Android Studio中的Memory Profiler可以帮助您了解应用如何随时间分配内存。它也可以用于xamarin android app。
尝试使用IComponentCallbacks2
接口并实现Application.OnTrimMemory
以根据当前系统约束逐步释放内存。
您可以参考Manage your app's memory了解更多信息。