android 内存溢出 Java.lang.OutOfMemoryError
来源:互联网 发布:人工智能产品设计 编辑:程序博客网 时间:2024/05/23 02:18
bitmap 设置图片尺寸,避免 内存溢出 OutOfMemoryError的优化方法
★android 中用bitmap 时很容易内存溢出,报如下错误:Java.lang.OutOfMemoryError : bitmap size exceeds VM budget
● 主要是加上这段:
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 2;
//------------------------------------------------------------------------------------------------------------------
● eg1:(通过Uri取图片)
private ImageView preview;
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 2;//图片宽高都为原来的二分之一,即图片为原来的四分之一
Bitmap bitmap = BitmapFactory.decodeStream(cr
.openInputStream(uri), null, options);
preview.setImageBitmap(bitmap);
以上代码可以优化内存溢出,但它只是改变图片大小,并不能彻底解决内存溢出。
● eg2:(通过路径取图片)
private ImageView preview;
private String fileName= "/sdcard/DCIM/Camera/2010-05-14 16.01.44.jpg";
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 2;//图片宽高都为原来的二分之一,即图片为原来的四分之一
Bitmap b = BitmapFactory.decodeFile(fileName, options);
preview.setImageBitmap(b);
filePath.setText(fileName);
★android 中用bitmap 时很容易内存溢出,报如下错误:Java.lang.OutOfMemoryError : bitmap size exceeds VM budget
● 主要是加上这段:
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 2;
//------------------------------------------------------------------------------------------------------------------
● eg1:(通过Uri取图片)
private ImageView preview;
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 2;//图片宽高都为原来的二分之一,即图片为原来的四分之一
Bitmap bitmap = BitmapFactory.decodeStream(cr
.openInputStream(uri), null, options);
preview.setImageBitmap(bitmap);
以上代码可以优化内存溢出,但它只是改变图片大小,并不能彻底解决内存溢出。
● eg2:(通过路径取图片)
private ImageView preview;
private String fileName= "/sdcard/DCIM/Camera/2010-05-14 16.01.44.jpg";
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 2;//图片宽高都为原来的二分之一,即图片为原来的四分之一
Bitmap b = BitmapFactory.decodeFile(fileName, options);
preview.setImageBitmap(b);
filePath.setText(fileName);
0 0
- android 内存溢出 Java.lang.OutOfMemoryError
- Android 图片内存溢出java.lang.OutOfMemoryError:
- android内存溢出 java.lang.OutOfMemoryError
- Java 内存溢出(java.lang.OutOfMemoryError)
- java.lang.OutOfMemoryError: PermGen space 内存溢出
- 内存溢出问题(java.lang.OutOfMemoryError)
- tomcat报内存溢出 java.lang.OutOfMemoryError
- java.lang.OutOfMemoryError内存溢出问题解决方法
- 内存溢出--java.lang.OutOfMemoryError: PermGen space
- BitmapFactory.decodeStream 内存溢出java.lang.OutOfMemoryError
- 内存溢出java.lang.OutOfMemoryError解决方法
- 解决内存溢出问题:java.lang.OutOfMemoryError
- 内存溢出(java.lang.OutOfMemoryError )解决方法!
- java内存溢出(ava.lang.OutOfMemoryError)解决方法
- 内存溢出:java.lang.OutOfMemoryError: PermGen space
- 内存溢出 java.lang.OutOfMemoryError: PermGen space
- java.lang.OutOfMemoryError: PermGen space 内存溢出
- java.lang.OutOfMemoryError: allocLargeArray内存溢出
- 在Tomcat部署Solr
- 每天学点Python之Iterator
- html修炼养成--一些问题
- 整合阿里云OSS文件上传2
- MySQl字符串类型
- android 内存溢出 Java.lang.OutOfMemoryError
- Javascript题贰
- 如何在Socket编程中检测端口是否被占用
- PHP中使用RSA加密总结
- iOS崩溃调试的使用和技巧总结
- SqlServer-建立触发器实例
- iOS开发 使用Xcode自带的Leaks:动态的检测内存泄露
- vs2010 解决方案项目 属性配置
- MySQL性能分析及explain的使用