Changelog | MAUI Barcode Scanner
tip
For additional details about the API, please refer to our API reference documentation.
MAUI - Version 5.1.1 (12 Dec 2024)
- 🎉 New:
- Added
ParsedDocument
property in the RTU UI Barcode v1 result. Refer toScanbotSDK.MAUI.RTU.v1.Barcode
class. - Added support for
net8.0
andnet7.0
, which is helpful for the unit tests projects, to test the configuration classes.
- Added
- 🚀 Improvements:
- Android: Added a fix for scanning big chunks of barcodes in a single session.
- iOS: Improved the Barcode classic components behavior when the scanner visibility was toggled.
MAUI - Version 5.1.0 (7 Aug 2024)
- 🎉 New:
- Added new freshly designed RTU-UI version 2 for Barcode scanning with advanced agile configuration. Use
ScanbotSDK.MAUI.ScanbotBarcodeSDK.BarcodeScanner
to leverage the new UI. See Ready-to-Use UI for documentation and various use cases. - Added support for filtering barcodes using a regular expression in our barcode classic component.
- Added support for the Micro PDF 417 barcode format.
- Added support for parsing of AAMVA Certificate of Title for motor vehicle barcodes.
- Added new freshly designed RTU-UI version 2 for Barcode scanning with advanced agile configuration. Use
- 🚀 Improvements:
- Optimized camera preview quality and processing speed for all scanners.
- iOS:
- IMPORTANT: Changed the default rear cameras on all scanners to the triple or dual camera. On some devices with triple camera this results in a different view port (more zoomed in). Please make sure to adapt your zoom ranges and factors.
- Added support of haptic feedback on capable devices.
- Android:
- Changed the touch to focus square in the native camera view to a circle.
- Added several missing, and mostly platform specific, properties to the RTU v1 scanner configurations:
- BarcodeScannerConfiguration
and BatchBarcodeScannerConfiguration the following properties where exposed:
- Both iOS and Android:
AutoCancelTimeout
(this was already present inBarcodeScannerConfiguration
, but was added toBatchBarcodeScannerConfiguration
).
- For Android only (accessible through #if ANDROID):
CameraPreviewMode
UseButtonsAllCaps
DelayAfterScan
TouchToFocusEnabled
MinFocusDistanceLock
- For iOS only (accessible through #if iOS):
FocusLockEnabled
FocusLockPosition
DoubleTapToZoomEnabled
PinchToZoomEnabled
ShouldAnimateZooming
- Both iOS and Android:
- BarcodeScannerConfiguration
and BatchBarcodeScannerConfiguration the following properties where exposed:
- 🐞 Bug fixes:
- For BarcodeFormat.Pdf417, a single case to generate clusters was not covered, which led to a crash.
- Fixed issue with misaligned barcode polygons on some devices with horizontal orientation.
- ⚠️ Breaking Changes:
- IMPORTANT: The MAUI Classic UI Components:
BarcodeScannerView
andBarcodeScanAndCountView
must now be wrapped insideScanbotClassicUIContainer
. See the example here. - Our Ready to Use UI v1 barcode scanners are now deprecated and it is highly encouraged to use the new RTU UI v2 barcode scanner API. All RTU v1 code has been moved to the
ScanbotSDK.MAUI.RTU.v1
namespace, with RTU v2 code existing underScanbotSDK.MAUI
. - The structure of barcode formatted results has been changed from record classes to using GenericDocument. See API reference for the new structure here. This change affects RTU UI v1, however, the same structures are used across RTU UI v1 and RTU UI v2.
- Renamed
BarcodeFormat.Rss14
toBarcodeFormat.Databar
andBarcodeFormat.RssExpanded
toBarcodeFormat.DatabarExpanded
. - ZoomRange can be created with any input values but will be limited under the hood by internal MIN_ZOOM (x0.2) and MAX_ZOOM (x100) values.
- iOS:
MinFocusDistanceLock
removed fromBarcodeScannerConfiguration
andBatchBarcodeScannerConfiguration
.FocusLockEnabled
andFocusLockPosition
are exposed for iOS and these values give more control for camera focus.
- IMPORTANT: Changed the default rear cameras on all scanners to the triple or dual camera. On some devices with triple camera this results in a different view port (more zoomed in). Please make sure to adapt your zoom ranges and factors.
- IMPORTANT: The MAUI Classic UI Components:
- 🚙 Under the hood:
- Updated the .NET bindings to .NET Barcode SDK 5.1.0 (see our .NET changelog for more under the hood changes).
MAUI - Version 4.2.1 (25 Mar 2024)
- 🎉 New:
- Added new events for
ScanbotSDK.MAUI.ClassicComponent.BarcodeScannerView
:OnBarcodeScanResult
, triggered after a barcode scan result is obtained;OnSelectBarcodeResult
, which occurs when a barcode result is selected.
- Added new events for
- 🚀 Improvements:
- Previously targeting
.NET 7
, now supports both.NET 7
and.NET 8
.
- Previously targeting
- 🐞 Bug Fixes:
- Namespace issues in the classic component resolved;
- The
OverlayTextFormat
property is now consistently reflected across platforms.
- ⚠️ Breaking Changes:
- Changes in
SelectionOverlayConfiguration
:PolygonColor
has been renamed toStrokeColor
.HighlightedPolygonColor
has been renamed toHighlightedStrokeColor
.
BarcodeScannerView.OverlayTextEnabled
is set to true by default.
- Changes in
- 🚙 Under the hood:
- The native Scanbot iOS SDK upgraded to v4.2.2.
MAUI - Version 4.2.0 (6 Mar 2024)
- 🎉 New:
- Added support for several new barcode formats including:
AustraliaPost
DatabarLimited
Gs1Composite
JapanPost
RoyalMail
RoyalTntPost
UspsIntelligentMail
- Enhanced control over how to handle GS1 messages in barcodes.
- Added new components
ScanbotSDK.MAUI.ClassicComponent.BarcodeScannerView
andScanbotSDK.MAUI.ClassicComponent.BarcodeScanAndCountView
. It's recommended to utilize .NET 8 as your target platform because .NET 7 has issues with its Shell control which affect our Classic Component. - Formatted barcode documents are now exposed on barcodes via a new property called
FormattedResult
, which contains strongly typed records of the data contained within the barcode. The new record types include:AAMVADocument
DEMedicalPlanDocument
Gs1Document
IDCardPDF417Document
MedicalCertificateDocument
SEPADocument
SwissQRDocument
VCardDocument
BoardingPass
- Added
CameraZoomRange
inBarcodeScannerConfiguration
andBatchBarcodeScannerConfiguration
.
- Added support for several new barcode formats including:
- 🚀 Improvements:
- Improved the speed of barcode recognition for most barcode symbologies.
- Improved contour lines detection with ML Based detection.
- 🐞 Bug fixes:
- Android:
- Optimized camera functionalities in
ScanbotCameraXView
.
- Optimized camera functionalities in
- Android:
- ⚠️ Breaking changes:
- GS1 codes are now handled differently for various barcode types. Using the default option
GS1Handling.Parse
will give the same result as before for all barcode types, except forBarcodeFormat.RssExpanded
. Previously, forRssExpanded
, the result was inconsistently returned with parentheses. Now, to get results with parentheses for all barcode types, choose the optionGS1Handling.Decode
.
- GS1 codes are now handled differently for various barcode types. Using the default option
- 🚙 Under the hood:
- iOS:
- Added new methods in
SBSDKCameraDevice
class for camera and licensing functionalities.
- Added new methods in
- The native Scanbot iOS SDK upgraded to v4.2.1.
- The native Scanbot Android SDK upgraded to v4.2.0.
- iOS:
MAUI - Version 4.0.0 (9 Jan 2024)
- 🚀 Improvements:
- Improved the speed of barcode recognition for most barcode symbologies.
- No need to call
DependencyManager.RegisterServices
in platform specific start-up code. Services are registered as soon as the SDK is initialized.
- 🐞 Bug fixes:
- Both iOS and Android:
InitialScanDelay
only used some portions of theTimeSpan
object (seconds for iOS, milliseconds for Android). Now the full total is used.AutoCancelTimeout
removed fromBatchBarcodeScannerConfiguration
as it is only currently supported for the regular barcode scanner viaBarcodeScannerConfiguration
.
- Android:
- Before, for certain invalid decodings of QR and MicroQR codes, an exception was thrown from ZXing. Now we rigorously treat this as a format error.
- Before, we returned
BarcodeFormat.Code25
results whenBarcodeFormat.Industrial2Of5
was enabled andBarcodeFormat.Code25
was disabled. Now, we do not return theBarcodeFormat.Code25
result for such decoding options. AutoCancelTimeout
only used the seconds portion of theTimeSpan
object. Now the total number of seconds is correctly used.
- iOS:
- Fixed a crash when denying camera permission.
- Fixed issue with
ScanbotBarcodeSDK.BarcodeService.OpenBarcodeScannerView
in which the default title of the confirm button was set to the default title of the retry button. AutoCancelTimeout
is now applied correctly when usingScanbotBarcodeSDK.BarcodeService.OpenBarcodeScannerView
.
- Both iOS and Android:
- ⚠️ Breaking changes:
- All types under the
BarcodeSDK
namespace have been moved to theScanbotSDK
namespace.
- All types under the
- 🚙 Under the hood:
- The
ScanbotBarcodeSDK.NET
package is no longer referenced as a dependency. All needed files and dependencies are included directly in the package. BarcodeSDK.MAUI.iOS
andBarcodeSDK.MAUI.Droid
assemblies merged into one assembly namedBarcodeSDK.MAUI
.- The native Scanbot Android SDK upgraded to v4.0.1.
- The native Scanbot iOS SDK upgraded to v4.0.3.
- The
MAUI - Version 3.7.0 (5 Oct 2023)
- 🎉 New:
- More supported barcode types:
- Micro QR Code
- Support for configuring a confirmation dialog for the Barcode Scanner Ready-To-Use UI Component.
- More supported barcode types:
- 🚀 Improvements:
- Improved accuracy and detection speed of QR_CODE, Code39, and Code93 barcode types.
- Added support for inverted PDF-417 barcodes.
- 🐞 Bug fixes:
BarcodeSDK.MAUI.ScanbotBarcodeSDK.LicenseInfo
now returns the correct license status.- Fixed iOS-specific issue with barcode RTU-UI components not scanning on first use.
- For
BarcodeSDK.MAUI.ScanbotBarcodeSDK.DetectionService.DetectBarcodesFrom
:- Fixed
NullReferenceException
when using anull
ImageSource
(usually from a cancelled image selection). - Fixed iOS-specific issue with barcodes not being scanned when no configuration is provided.
- Fixed Android-specific issue with the method always returning
null
when using theImageSource
overload.
- Fixed
- ⚠️ Breaking changes:
- Renamed the
BarcodeSDK.MAUI.Constants.OverlayFormat
enum toBarcodeSDK.MAUI.Constants.BarcodeTextFormat
.- Any types which use the enum have also been updated, such as
BarcodeSDK.MAUI.Configurations.SelectionOverlayConfiguration
.
- Any types which use the enum have also been updated, such as
- If using named parameters for
BarcodeSDK.MAUI.Configurations.SelectionOverlayConfiguration
, the misspelledautomaticSelectionEnaled
parameter has been renamed toautomaticSelectionEnabled
.
- Renamed the
- 🚙 Under the hood:
- The native Scanbot Android SDK upgraded to v3.7.0.
- The native Scanbot iOS SDK upgraded to v3.7.1.
MAUI - Version 3.6.0 (20 Jul 2023)
- 🎉 First release of the
ScanbotBarcodeSDK.MAUI
NuGet package. - Provides Ready-To-Use UI Components - a set of easy to integrate and customize high-level MAUI components for the most common tasks in Scanbot Barcode SDK:
- Barcode & QR Code Scanning
- Batch Barcode Scanning.
- Provides additional SDK features based on image picked from the device photos application:
- Detect Barcodes on Image
- New unified Scanbot SDK API:
- Idiomatic asynchronous design
- MAUI-based unified API for Android & iOS
- Example App demonstrating the new functionality: scanbot-barcode-sdk-maui-example
Want to scan longer than one minute?
Generate a free trial license to test the Scanbot SDK thoroughly.
Get your free Trial LicenseWhat do you think of this documentation?
What can we do to improve it? Please be as detailed as you like.