v7.3.0
·
49 commits
to develop
since this release
New features
- [Web] Added support for multiple barcode detection backends, selectable via
MobileScannerPlatform.instance.setWebBarcodeReader(WebBarcodeReader reader):WebBarcodeReader.auto(default), uses the nativeBarcodeDetectorAPI when available, and falls back tozxing-wasmotherwise.WebBarcodeReader.barcodeDetector, uses the W3C Shape Detection API (Chrome 83+, Edge 83+, Safari 17+). No external library is loaded.WebBarcodeReader.zxingWasm, uses zxing-wasm (ZXing C++ compiled to WebAssembly), which works in all modern browsers including Firefox.WebBarcodeReader.zxingJs, the legacy ZXing JavaScript backend, retained for backward compatibility.
- [Web] Added
MobileScannerPlatform.instance.activeWebReaderto query which backend is currently active. - Added
BarcodeFormat.maxiCodeandBarcodeFormat.microQrCode, supported by theWebBarcodeReader.zxingJsandWebBarcodeReader.zxingWasmbackends. - Added
BarcodeFormat.dataBar,BarcodeFormat.dataBarExpandedandBarcodeFormat.dataBarLimited(GS1 DataBar / RSS-14), supported by theWebBarcodeReader.zxingJsandWebBarcodeReader.zxingWasmbackends (DataBar and DataBar Expanded only forzxingJs), and by Apple Vision on iOS 15+ / macOS 12+.
Improvements
- [Web] Bumped
@zxing/library(theWebBarcodeReader.zxingJsbackend) from 0.21.3 to 0.23.0.
Bug Fixes
- Fixed disposing a
MobileScannerControlleralso disposing the platform resources of a different controller. Disposing a controller that does not hold the active camera session no longer tears down the camera of the controller that does. (#1631) - Fixed a subscription leak where a controller that was disposed without being stopped kept its internal event stream subscriptions alive.
- Fixed an issue when running the plugin using AGP 9.