本文主要是介绍android - OOM Bitmap too large to be uploaded into a texture,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
加载的图片太多或图片过大时经常出现OOM问题
》 OOM 问题,压缩图片(压缩图片,对图片进行压缩处理)或 及时回收图片 回收大对象
》 读取相册图片出现:Bitmap too large to be uploaded into a texture的意思是图片超过了硬件加速所规定的高度
file:///storage/emulated/0/DCIM/Camera/IMG_20150709_182139.jpg
办法一:禁止硬件加速即可(Activity或Manifest里面设置)
android:hardwareAccelerated="false"
方法二:比较好的解决方法是类似google map的实现:将图片分成不同的块,每次加载需要的块。(这个没试)android提供了一个方法:
http://developer.android.com/reference/android/graphics/BitmapRegionDecoder.html
1 | public void drawBitmap (Bitmap bitmap, Rect src, RectF dst, Paint paint) |
2 |
3 | public Bitmap decodeRegion (Rect rect, BitmapFactory.Options options) |
这篇关于android - OOM Bitmap too large to be uploaded into a texture的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!