我使用的是1.0.8版本,使用的时候,选择了5张图片,每张都大于100kb,然而在压缩的时候出现了OOM,去看了一下源码,发现报错的地方是解析文件为Bitmap。也就是GDBitmapUtils的第68行。报错信息如下:
java.lang.OutOfMemoryError: Failed to allocate a 2073612 byte allocation with 1164040 free bytes and 1136KB until OOM
at dalvik.system.VMRuntime.newNonMovableArray(Native Method)
at android.graphics.BitmapFactory.nativeDecodeStream(Native Method)
at android.graphics.BitmapFactory.decodeStreamInternal(BitmapFactory.java:677)
at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:653)
at android.graphics.BitmapFactory.decodeFile(BitmapFactory.java:433)
at android.graphics.BitmapFactory.decodeFile(BitmapFactory.java:459)
at com.wgd.gdcp.gdcplibrary.GDBitmapUtil.bitmapDegree(GDBitmapUtil.java:68)
at com.wgd.gdcp.gdcplibrary.GDCompressImageS$100000000.run(GDCompressImageS.java:102)
at java.lang.Thread.run(Thread.java:818)
我使用的是1.0.8版本,使用的时候,选择了5张图片,每张都大于100kb,然而在压缩的时候出现了OOM,去看了一下源码,发现报错的地方是解析文件为Bitmap。也就是GDBitmapUtils的第68行。报错信息如下: java.lang.OutOfMemoryError: Failed to allocate a 2073612 byte allocation with 1164040 free bytes and 1136KB until OOM at dalvik.system.VMRuntime.newNonMovableArray(Native Method) at android.graphics.BitmapFactory.nativeDecodeStream(Native Method) at android.graphics.BitmapFactory.decodeStreamInternal(BitmapFactory.java:677) at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:653) at android.graphics.BitmapFactory.decodeFile(BitmapFactory.java:433) at android.graphics.BitmapFactory.decodeFile(BitmapFactory.java:459) at com.wgd.gdcp.gdcplibrary.GDBitmapUtil.bitmapDegree(GDBitmapUtil.java:68) at com.wgd.gdcp.gdcplibrary.GDCompressImageS$100000000.run(GDCompressImageS.java:102) at java.lang.Thread.run(Thread.java:818)
希望作者修复此Bug。