qr_code_dart_scan
A QR code scanner that works on both iOS and Android using dart decoder.
0.14.0
8.0K downloads/mo
#3224 most downloaded on pub.dev
RafaelBarbosatec/qr_code_dart_scan
What this package is like to depend on
Last release 13 days ago
10 Aug 2026
Ships unpredictably
gaps range from 9 days to 10 months
Nearly every release is documented
notes for 50 of 50 stable releases
Nothing withdrawn
no release was ever pulled
5 years old
50 releases · first in 2021
7 releases in the last 12 months
see the full history below
Release timeline
50 releases · Aug 2021 to Aug 2026Releases
latest 50-
0.14.010 Aug 2026Release notes
Open source →Breaking: the models moved to
qr_code_dart_decoderScanResultandBarcodeFormatare now owned byqr_code_dart_decoder(0.3.0) and re-exported here, so both packages speak the same types andzxing_libis gone from this package's dependencies. Importing frompackage:qr_code_dart_scan/qr_code_dart_scan.dartkeeps working unchanged.-
ScanResult.cornersis nowList<Point<double>>(dart:math) instead ofList<Offset>. The decoder is a pure Dart package and cannot depend ondart:ui. NewtoOffset/toOffsetsextensions bridge them:// before CustomPaint(painter: MyPainter(result.corners)); // List<Offset> // now CustomPaint(painter: MyPainter(result.corners.toOffsets)); // List<Offset> -
QRCodeDartScanDecoderno longer speakszxing_lib.decodeCameraImageanddecodeFilereturnScanResult?instead ofResult?, completing the migration started in 0.13.0.
Bug fix (from
qr_code_dart_decoder0.3.0)- Camera decoding now honours the
formatsyou pass toQRCodeDartScanView/QRCodeDartScanDecoder. The format list was accepted but never reached the reader, so live scanning could return a barcode in a format you had not asked for. If you were relying on that leak, widenformatsexplicitly.
-
-
0.13.010 Aug 2026Release notes
Open source →Breaking:
zxing_libno longer leaks into the scanner APIonCapture,onResultInterceptorandformatsnow use the package's own types, so apps do not need azxing_libdependency to consume them.before ( zxing_lib)now ResultScanResultBarcodeFormatBarcodeFormat(own enum, only the 10 supported formats)result.barcodeFormatresult.formatresult.resultPoints(List<ResultPoint?>?)result.corners(List<Offset>, never null)result.timestamp(intmillis)result.timestamp(DateTime)result.rawBytes(List<int>?)result.rawBytes(Uint8List?)result.numBitsandresult.resultMetadatawere dropped; nothing in the package used them.- Passing an unsupported format is now a compile error instead of a runtime
Exception. ScanResultkeeps identity equality on purpose, so scanning the same code twice still notifies.- The low-level
QRCodeDartScanDecoderstill speakszxing_libtypes; only the scanner layer was migrated.
-
0.12.130 Jul 2026Release notes
Open source →- Result points accuracy: Fixed
resultPointscoordinates to accurately match the QR code position in the camera preview. - Dynamic rotation handling: Automatically detects camera orientation (landscape/portrait) and applies the correct transformation.
- Bounding box generation: Result points now always form a perfect quadrilateral (4 corners) regardless of the number of points detected.
- Example enhancement: Added visual overlay in the example app to display detected QR code boundaries with lines and points.
- Result points accuracy: Fixed
-
0.12.028 Jul 2026Release notes
Open source →- Performance improvements: Reduced scan interval default from 1s to 200ms (5x faster detection).
- Memory optimization: Update
qr_code_dart_decoderto0.2.0with major performance improvements:- Zero-copy data transfer between isolates (~4MB saved per frame)
- Y plane only processing (~1.5MB saved per frame)
- Memory leak fix in results list
- Block-wise image rotation (30-40% faster)
- Blur detection to skip unprocessable frames (20-30% CPU savings)
- Detection speed: Average detection time reduced from 2-3s to ~0.4-0.6s (5-7x faster).
- Decode optimization: Changed to
tryHarder: trueon first attempt for better success rate.
-
0.11.503 Oct 2025Release notes
Open source →- Add image stream watchdog to detect and handle native camera errors when stream stops responding.
- Add
imageStreamTimeoutparameter to configure watchdog timeout (default 2 seconds).
-
0.11.410 Sep 2025Release notes
Open source →- Fix issue
CameraException(Disposed CameraController, buildPreview() was called on a disposed CameraController.)
- Fix issue
-
0.11.301 Sep 2025Release notes
Open source →- Adds
focusPointinQRCodeDartScanViewto set the focus point for the camera preview. - Performance improvements.
Release notes
Open source →- Adds
focusPointinQRCodeDartScanViewto set the focus point for the camera preview.
- Adds
-
0.11.215 Aug 2025 -
0.11.123 Jun 2025 -
0.11.020 Jun 2025Release notes
Open source →- Adds
croppingStrategyinQRCodeDartScanViewto crop the image before decode. - Update
qr_code_dart_decoderto0.1.1. - remove
scanInvertedQRCodeinQRCodeDartScanView. Now it is always true.
Release notes
Open source →- Adds
croppingStrategyinQRCodeDartScanViewto crop the image before decode. - Update
qr_code_dart_decoderto0.1.1. - remove
scanInvertedQRCodeinQRCodeDartScanView. Now it is always true.
- Adds
-
0.10.103 Jun 2025 -
0.10.017 Mar 2025Release notes
Open source →- Adds
lockCaptureOrientationdefault toDeviceOrientation.portraitUpinQRCodeDartScanView. - Decode improvements. Now it use package
qr_code_dart_decoder. - Adds
cropRectinQRCodeDartScanViewto crop the image before decode.
- Adds
-
0.9.1117 Feb 2025Release notes
Open source →- Fix exception: CameraException(Uninitialized CameraController, startImageStream() was called on an uninitialized CameraController.);
-
0.9.1013 Feb 2025 -
0.9.912 Feb 2025Release notes
Open source →- Adds
imageDecodeOrientationinQRCodeDartScanViewto force read image in landscape or portrait orientation.
- Adds
-
0.9.9+112 Feb 2025 -
0.9.803 Feb 2025Release notes
Open source →- Rename param
forceReadPortraittoforceReadLandscape. Read image portrait by default. IfforceReadLandscapeis true, the image will be read in landscape mode, helpful to read itf code. - Fix IOS camera orientation.
- Rename param
-
0.9.730 Jan 2025 -
0.9.630 Jan 2025 -
0.9.530 Jan 2025Release notes
Open source →- Fix issue #30. Adds
forceReadPortraitinQRCodeDartScanViewto force read portrait image.
- Fix issue #30. Adds
-
0.9.417 Dec 2024Release notes
Open source →- adds methods
toggleFlash,setFlash,setFlashAutoin QRCodeDartScanController.
- adds methods
-
0.9.308 Nov 2024 -
0.9.215 Oct 2024Release notes
Open source →- Adds method
stopScanandstartScaninQRCodeDartScanController. - Adds get
isLiveScan. - Fix
changeCameraexception.
- Adds method
-
0.9.102 Sep 2024 -
0.9.019 Aug 2024Release notes
Open source →- Camera key improvments
- Update camera pluggin to
0.11.0 - Performance improvements. Now using pool of isolates to process in live.
- Adds support to
itf.
-
0.8.307 Aug 2024 -
0.8.205 Aug 2024 -
0.8.120 Jun 2024 -
0.8.018 Apr 2024Release notes
Open source →QRCodeDartScanControllerImprovements- Adds
Future<void> changeCamera(TypeCamera typeCamera)method inQRCodeDartScanController. - Adds
intervalScanparam inQRCodeDartScanView. - Adds
onResultInterceptorparam inQRCodeDartScanView.
-
0.7.713 Apr 2024 -
0.7.618 Mar 2024Release notes
Open source →- Handle with
didChangeAppLifecycleState. - Fix issue #15. Thanks thierrylee!
- Handle with
-
0.7.513 Feb 2024Release notes
Open source →- Update dependencies.
- Adds the method
disposeinQRCodeDartScanController
-
0.7.407 Feb 2024 -
0.7.311 Oct 2023 -
0.7.217 Aug 2023 -
0.7.126 May 2023Release notes
Open source →- return
resolutionPresetdefault toQRCodeDartScanResolutionPreset.medium - removre debug prints.
- return
-
0.7.018 May 2023 -
0.6.030 Jun 2022Release notes
Open source →- Adds scan by picture
- Export decoder
- Improvements in
QRCodeDartScanController - Improvements in project structure
-
0.5.122 Jun 2022 -
0.5.022 Jun 2022 -
0.4.120 Apr 2022Release notes
Open source →- update
camera - Adds param
resolutionPresetandchildinQRCodeDartScanView.
- update
-
0.4.029 Mar 2022 -
0.3.023 Dec 2021 -
0.2.125 Oct 2021 -
0.2.006 Oct 2021 -
0.1.119 Aug 2021Release notes
Open source →- rename
scanQRCodeInvertedtoscanInvertedQRCode - improvements aspectRatio.
- rename
-
0.1.016 Aug 2021Release notes
Open source →- add
setScanEnabledin controller. - add other formats:
QR_CODE,AZTEC,DATA_MATRIX,PDF_417,CODE_39,CODE_93,CODE_128,EAN_8,EAN_13.
- add
-
0.0.213 Aug 2021 -
0.0.112 Aug 2021 -
0.0.1+112 Aug 2021