MultiFormatReader跟QRCodeMultiReader 其中MultiFormatReader能解析二維碼、條形碼。而QRCodeMultiReader只能解析二維碼。大多數(shù)代碼使用的是MultiFormatReader這個類,因為二維碼、條形碼都能掃描,很方便。但是有個問題就是MultiFormatReader并沒有提供解析多個結(jié)果的方法,也就意味著如果用這個解析類是無法直接得到解析多個二維碼結(jié)果的。我截了兩張圖,如下:

可以看到,如果想一次掃描并解析多個二維碼,用QRCodeMultiReader這個類就可以了,可以返回Result[],同時,對CaptureActivityHandler中的public void handleMessage(Message message)方法進行相應(yīng)的修改,最終會在CaptureActivity中將結(jié)果集回調(diào)到我們調(diào)用ZXing掃描的地方。 這個解析類是出現(xiàn)在DecodeHandler 中的,將其中的解析類改成QRCodeMultiReader,并將下面的PRivate void decode(byte[] data, int width, int height)方法做修改,讓它返回解析多個結(jié)果。下面我會附上源碼
第二個思路是挖財公司的一個大佬給我提供的,打算在下一篇博客中去實現(xiàn)它。如果有其他思路或者代碼,也可以分享一下。
新聞熱點
疑難解答