清泛IT社区

标题: 【拍照图片处理】Attempt to invoke virtual method 'boolean android.graphics.Bitmap.compress(android.graphics.Bitmap$CompressFormat, int, java.io.OutputStream)' on a null object reference [打印本页]

作者: App Inventor 2     时间: 昨天 21:24
标题: 【拍照图片处理】Attempt to invoke virtual method 'boolean android.graphics.Bitmap.compress(android.graphics.Bitmap$CompressFormat, int, java.io.OutputStream)' on a null object reference
在做图片识别App的时候,选择相册图片没有问题,拍照后图片就报错:
Attempt to invoke virtual method 'boolean android.graphics.Bitmap.compress(android.graphics.Bitmap$CompressFormat, int, java.io.OutputStream)' on a null object reference

图片大致的处理流程是:先TaifunImage压缩尺寸,在Base64化,调在线api进行识别。

通过调试发现问题是出现在 图片的Resize/Base64化的步骤上,看报错是图片对象为空导致的。

参考了一些英文资料,大致可能原因有:图片被占用,导致读取失败。或者图片已经被删除了。

鉴于此,我加了一个步骤,即拍照后图片拷贝一份到App的目录下,然后使用App目录中的副本图片进行处理,完美解决!!!

参考代码块如下:





欢迎光临 清泛IT社区 (https://bbs.tsingfun.com/) Powered by Discuz! X3.3