com.google.zxing.NotFoundException 问题分析

这仅仅是一篇问题分析哈,提供理解这个问题的思路,并不是解决这个问题的方法。

背景

先说背景,项目中需要一个扫描二维码的功能,网上找了一个比较火的 BGAQRCode-Android,用了一圈感觉还不错。

但是在扫描页面,logcat 总是报 W/System.err: com.google.zxing.NotFoundException,类似下图:

NotFoundException

结论

再说结论,对分析不感兴趣的可以看了结论就走了。

如果你是和我用的同样的库,说着说同样的封装的 ZXing 的库,而且使用的是 动态扫码,那么这个问题你可以不用关心。

如果你使用的是从图片库选择图片,然后识别,结果报了这样一个错,那八成是图片有问题或者图片的处理有问题,网上一搜,大把的。

分析

简单来说,这个问题就是 ZXing 没有识别出二维码、条码。

那扫描的时候为什么一直在报这个错呢?

因为扫描的原理就是,将视频输入的数据流,每隔一段时间(很短的一段时间),取一帧,作为图片拿出来,让 ZXing 识别。识别到了,就返回结果,没识别到,就会报 NotFoundException

我没有研究 ZXing 的底层原理哈,但大的方向一定是这样。

所以,如果有朋友在使用中,发现了标题的这个警告,而刚好这个警告又是出现在动态扫描页面,那忽略就好了。

希望可以给为这个问题抓狂的朋友一点安慰。

发布了118 篇原创文章 · 获赞 55 · 访问量 113万+

猜你喜欢

转载自blog.csdn.net/zhyl8157121/article/details/98171476