在我的应用程序中,我有照片,视频等.在图像的情况下,我已经完成缩放,但有时我得到了OutOfMemoryError.如何有效地处理错误?
Dar*_*rov 32
在尝试加载图像之前,请检查图像大小是否小于可用内存.因此,处理OutOfMemoryException的最有效方法是以这样一种方式构建应用程序,即它永远不会尝试将大量数据加载到内存中以避免异常.
Activity中有一个方法,当设备内存不足时调用该方法,但这只能用于触发缓存文件清理.这并不意味着您的应用程序进程内存不足.
您还可以添加try catch块来捕获Error或OutOfMemoryError,但这样做太迟了.
在Android应用程序中处理大量的位图或大型位图确实很困难.你会在Romain Guy的这篇文章中找到关于这个主题的一些提示.
您还可以通过在BitmapFactory.decode*()方法中提供的BitmapFactory.options中指定样本大小,直接将位图加载到所需的分辨率.
| 归档时间: |
|
| 查看次数: |
41942 次 |
| 最近记录: |