6.27.1
Released: September 6, 2024
API Changes
Barcode
BarcodeTrackingAdvancedOverlay
andBarcodeTrackingAdvancedOverlayListener
have been re-added, with the following changes:- The
BarcodeTrackingAdvancedOverlay.ViewForTrackedBarcode()
andBarcodeTrackingAdvancedOverlayListener.ViewForTrackedBarcode()
methods no longer support rendering any kind of images. For further details about this backwards incompatible change, contact Scandit Support.
- The
6.27.0
Released: September 5, 2024
API Changes
Barcode
- The
BarcodeTrackingAdvancedOverlay
andBarcodeTrackingAdvancedOverlayListener
have been removed. For further details about this backwards incompatible change, contact Scandit Support.
Bug Fixes
Barcode
- Resolved cases in which Smart Scan Intention was possibly reporting the wrong barcode when the camera was quickly changing direction with a single barcode in the scene.
- Fixed an issue where some updates to
SparkScanView
properties were not being propagated to the view.
6.26.0
Released: August 15, 2024
New Features
ID
- Added
AamvaVizBarcodeComparisonResult.frontMismatchImage
that highlights data fields on the front side of the document differing from the data encoded in the barcode. Please contact Scandit Support if you want to use this feature.
Parser
- The Parser has been expanded to support the IATA Bar Coded Boarding Pass (BCBP).
ParserDataFormat.IataBcbp
supports the latest specifications from the 2023-2024 Passenger Services Conference Resolution Manual (PSCRM). For the complete documentation of the standard please refer tothe official website
. - SwissQR parser: parsing issues are now reported as error code and message pairs, see
ParserIssue
.ParsedField.warnings
contains all the issues for a given field. Query all the fields with issues by callingParsedData.fieldsWithIssues
.
Behavioral Changes
Barcode
- Default value of
BarcodeCaptureSettings.batterySavingMode
(deprecated) andBarcodeCaptureSettings.batterySaving
has been changed fromBatterySavingMode.OFF
toBatterySavingMode.AUTO
.
Performance Improvements
Barcode
- Improved ArUco scanning when color inverted codes are enabled.
- Improved tracking robustness on Barcode Count.
- Significantly lowered the rate of false positives (i.e., presumed unscanned barcodes) when using Barcode Count.
- Improved recognition rate for Composite Codes, with a particular focus on codes with small 2d components (e.g. PDF417).
- Improved recognition rate of linear codes which are partially affected by damage or covered in plastic wrap, with a particular focus on Codabar barcodes.
- Improved localization of postal codes, up to 25% faster.
Bug Fixes
ID
- Fixed an error 255 that would prevent capturing MRZ for some license keys, for which this feature was enabled.
Core
- Fixed an issue where the Flutter modules would not initialize correctly when integrating them into a native Android app.
Deprecations
- Deprecated
BarcodeTrackingScenario
andBarcodeTrackingSettings.forScenario()
. Setting a scenario is no longer recommended,BarcodeTrackingSettings.BarcodeTrackingSettings()
should be used instead. - Deprecated
TextCapture
. - Deprecated
SparkScanView.shouldShowScanAreaGuides
,SparkScanView.soundModeButtonVisible
,SparkScanView.hapticModeButtonVisible
andSparkScanView.fastFindButtonVisible
(renamedSparkScanView.barcodeFindButtonVisible
). Also deprecatedSparkScanViewUiListener.onFastFindButtonTap()
(renamedSparkScanViewUiListener.onBarcodeFindButtonTap()
). - Deprecated
LaserlineViewfinderStyle
. - Deprecated
LaserlineViewfinder
. - Deprecated Legacy value of the
RectangularViewfinder
. - Deprecated Legacy value of the
BarcodeCaptureOverlayStyle
. - Deprecated Legacy value of the
BarcodeTrackingBasicOverlayStyle
.
6.25.3
Released: September 2, 2024
Bug Fixes
- Concatenated ArUco codes are now comma-separated.
6.25.2
Released: August 2, 2024
No updates for this framework in this release.
6.25.1
Released: August 1, 2024
Bug Fixes
Barcode
- Fixed an issue in MatrixScan Count that was causing a reset after a rotation.
ID
- Fixed an error 255 that would prevent capturing MRZ for some licenses where this feature is supposed to be enabled.
6.25.0
Released: July 5, 2024
New Features
Barcode
- Added the possibility to scan barcodes that are using the structured append mode to encode data across multiple codes. Check Barcode.structuredAppendData for more information.
- Added the ability to hide the progress bar when counting against a list with BarcodeCount:
BarcodeCountView.shouldShowListProgressBar
.
ID
- Added the following properties to
SDCVizResult
:SDCVizResult.bloodType
to represent the blood type of the document owner.SDCVizResult.sponsor
to represent the sponsor of the document owner.SDCVizResult.mothersName
to represent the mother’s name of the document owner.SDCVizResult.fathersName
to represent the father’s name of the document owner.
- Added
IdCaptureSettings.rejectVoidedIds
. When enabled, documents voided by authorities are rejected.warningThis feature currently supports 3 kinds of invalidation: Cut corners, holes punched in the document, and “VOID” perforations. Additionally, this feature currently supports only US Driver’s Licenses, and has no effect when scanning other document types.
- Added
RejectedId.rejectionReason
which contains the reason the document was rejected. - Improved the extraction of the document number from UK driver’s licenses.
- Added scandit-flutter-datacapture-id-voided-detection library that must be included when activating
IdCaptureSettings.rejectVoidedIds
.
Performance Improvements
Barcode
- Improved recognition rate for Composite A and Composite B barcodes, thanks to an increased robustness for small and low resolution MicroPDF417.
- Improved recognition rate of long, thin linear 1d codes, such as those found on electronic shelf labels (ESLs).
- Improved recognition rate of linear codes which are partially affected by damage or glare, with a particular focus on codabar barcodes.
ID
- Improved the accuracy of the AAMVA Barcode Verification.
Bug Fixesq
- Fixed a compatibility issue with Flutter version >= 3.22.0. Because of this breaking change we were forced to increase our minimum supported Flutter version to 3.22.0.
Barcode
- Fixed the update of the barcode capture success feedback.
6.24.0
Released: May 8, 2024
New Features
Barcode
-
Smart Scan Intention: Introduced a new algorithm that intelligently identifies and scans the barcode that the user intends to capture, reducing errors. Enabled by default in SparkScan (
SparkScanSettings.scanIntention
) and can be manually set in Barcode Capture (BarcodeCaptureSettings.scanIntention
). -
Improved Scanning Range: Enhanced scanning range for 1D barcodes on Electronic Shelf Labels (ESL) and paper shelf labels by 30-40% in both Full HD and 4K without compromising scanning speed. This improvement enables the fastest and most ergonomic scanning experience for tiny barcodes and ESLs, particularly those placed on top or bottom shelves.
-
Smart Battery Management: Introduced smart battery management to lower energy consumption and increase the up-time of the device. Tests show up to a 15% improvement in battery life. This option is disabled by default but can be enabled via
BarcodeCaptureSettings.batterySavingMode
, with settings for automatic, always on, or always off (default). -
User-Facing Camera: SparkScan now allows switching to the user-facing camera for scanning, useful in scenarios where the rear camera is not accessible or barcodes are hard to reach. See
SparkScanView.cameraSwitchButtonVisible
. -
New Symbology Supports:
- Symbology.frenchPost: Allows the recognition of postal codes (code postal) used by the French Post.
- Symbology.australianPost: Added support for decoding misprinted Australian Post codes.
ID
-
State-Specific Thresholds in ID Verification: Added support for per-state thresholds and removed the hardcoded number of features. This is a breaking change; old verification models will not work.
-
Timeout Callback Modification: Modified
IdCaptureListener.didTimedOut()
to be invoked whenever a document is localized for a period of time but could not be captured. -
Fixed Surnames in US Driver’s Licenses: Fixed truncated surnames in US driver’s licenses using magnetic stripe format.
-
Newly Supported Documents for MRZ Scanning:
- Mexico: Matrícula Consular
-
Newly Supported Documents for Front of Card/VIZ Scanning:
- USA:
- District of Columbia - Driver License & ID Card (2023 version)
- Idaho - Driver License & ID Card (2023 version)
- North Dakota - Driver License & ID Card (2023 version)
- West Virginia - Driver License & ID Card (2023 version)
- Wisconsin - Driver License & ID Card (2023 version)
- Mexico: Consular Voter ID
- USA:
Behavioral Changes
Barcode
- Battery Saving Mode: Changed from
BatterySavingMode.off
toBatterySavingMode.auto
. This can be changed viaSparkScanSettings.batterySaving
.
Performance Improvements
ID
- Improved Capture Performance: Enhanced capture performance for US driver’s license PDF417 barcodes with printing defects, particularly from Ohio, Louisiana, and Florida.
Bug Fixes
Barcode
- Fixed the “Tap to Focus” animation when the view size changes.
ID
- Fixed a crash when scanning a passport MRZ followed by a non-passport VIZ.
- Fixed an issue causing the century of birth dates, issue dates, and expiry dates to be returned incorrectly when scanning the VIZ of European IDs, Swiss driver’s licenses, and UAE IDs.
- Fixed instances where information was incorrectly extracted from British Columbia PDF417.
API Changes
Barcode
- Renamed Methods in BarcodePickView:
- Lifecycle Methods:
- When a widget is shown or when
AppLifecycleState
isAppLifecycleState.resumed
,BarcodePickView.resume()
should be called. - When you navigate to a new widget, hide the widget, or
AppLifecycleState
is notAppLifecycleState.resumed
,BarcodePickView.pause()
should be called.
- When a widget is shown or when
- Start/Stop Scanning:
BarcodePickView.start()
: Starts the scanning flow and can be manually stopped by callingBarcodePickView.stop()
. It will be stopped automatically whenBarcodePickView.pause()
is called and resumed withBarcodePickView.resume()
.BarcodePickView.stop()
: Stops the scanning flow and can be manually started by callingBarcodePickView.start()
.
- Lifecycle Methods:
Scanning is only possible when in resumed state, meaning BarcodePickView.start()
won’t start the scanning flow if BarcodePickView.resume()
isn’t called before or afterwards.