Android 如何在代码中动态清空或清除堆内存
在我的应用程序中,我同时使用simple gallery和coverflow 我在coverflow中点击了我的coverflow图像库,我被重定向到下一个包含全屏图像库内容的活动,我甚至可以滚动我的全屏图像库; 但当我在我的应用程序中放入更多的图像或高分辨率图像时,由于位图大小超过虚拟机预算,它会被强制关闭 所以我想在每次完成封面流和图库时清除堆内存,这样我就可以在我的应用程序中加载任意数量或任意分辨率的图像 所以如果有人能帮我。。。 如何在每次在代码中动态完成活动时清除/清空堆内存? 我已经尝试了回收和System.gc方法您无法“清除堆”。当您的对象不再被引用时,VM将自动执行此操作 话虽如此,位图在安卓系统中是一件棘手的事情。内存有限,当图像解码成位图时,它可能比压缩图像格式本身占用更多内存 你的解决方案没有简单的答案。即使你做的每件事都正确,你也可能只是内存不足。尽管如此,以下是一些提示:Android 如何在代码中动态清空或清除堆内存,android,gallery,heap-memory,coverflow,Android,Gallery,Heap Memory,Coverflow,在我的应用程序中,我同时使用simple gallery和coverflow 我在coverflow中点击了我的coverflow图像库,我被重定向到下一个包含全屏图像库内容的活动,我甚至可以滚动我的全屏图像库; 但当我在我的应用程序中放入更多的图像或高分辨率图像时,由于位图大小超过虚拟机预算,它会被强制关闭 所以我想在每次完成封面流和图库时清除堆内存,这样我就可以在我的应用程序中加载任意数量或任意分辨率的图像 所以如果有人能帮我。。。 如何在每次在代码中动态完成活动时清除/清空堆内存? 我已经
System.gc()。构建GC算法的人比你我都聪明;他们知道自己在做什么。当有可以通过GC释放的内存时,您永远不会得到OOME—GC总是在给您OOME之前运行
你可以看看romain guy所说的关于图形和位图的内容。很好地解释了romain的信息+1。这不是“romain的信息”。我不知道你指的是什么。他是谷歌ui工具包工程师之一。你刚才说的基本上就是他说的。他的名字是handle是Rominguy。当用户退出时,你怎么能终止应用程序的进程?