Skip to main content

Changelog

4.2.2 (12 April 2024)

  • 🐞 Bug fixes:
    • iOS:
      • Changed privacy manifest to comply with the latest Apple specs.
  • 🚙 Under the hood:
    • Updated the native iOS Scanbot SDK to 4.2.2 (cf. changelog)

4.2.1 (5 February 2024)

  • 🐞 Bug fixes:
    • Android:
      • Fixed an unhandled exception when closing the Document Scanner classic component.

4.2.0 (12 January 2024)

  • 🎉 New:
    • Added support for new barcode type BarcodeFormat.GS1_COMPOSITE.
    • Added analyzer image size limit property for Document Quality Analyzer analyzeQualityOfDocument(Page page, Size? analyzerImageSizeLimit). If analyzerImageSizeLimit not set, the image will be downscaled to 2500 px.
    • Added support for Kuwait ID cards in the MRZ scanner.
  • 🚀 Improvements:
    • Added more control over how to handle GS1 messages in barcodes. See BarcodeScannerAdditionalConfig.setGs1HandlingMode.
  • ⚠️ Breaking Changes:
    • Replaced BarcodeScannerConfiguration.gs1DecodingEnabled with BarcodeScannerConfiguration.gs1DecodingMode in the RTU-UI Barcode Scanner and Batch Barcode Scanner.
  • 🐞 Bug fixes:
    • Android:
      • Fixed the Camera Preview blinking after capturing a picture.
  • 🚙 Under the hood:
    • Updated the native iOS Scanbot SDK to 4.2.0 (cf. changelog)
    • Updated the native Android Scanbot SDK to 4.2.0 (cf. changelog)

4.1.0 (15 December 2023)

  • 🎉 New:
    • Added a new Optical Character Recognition engine based on machine learning algorithms that is usually much faster and less error prone. This new OCR engine currently supports all languages with latin letters, there is no need to specify the languages for it. The legacy engine, based on Tesseract, can still be used for non latin-based languages.
    • New PDF renderer for simple PDFs and "sandwiched" PDFs generation.
      • Added support for custom PDF metadata.
      • Added support for portrait, landscape and auto locks for the page orientation.
      • Extended the list of supported page sizes (A3, A5, B4, B5, etc.)
    • Added new Document Quality Analyzer. Use ScanbotSdk.analyzeQualityOfDocument.
    • Added new barcode types: AUSTRALIA_POST, JAPAN_POST, ROYAL_MAIL, ROYAL_TNT_POST, USPS_INTELLIGENT_MAIL, DATABAR_LIMITED.
    • Added touchToFocusEnabled to the RTU-UI scanner configs.
    • Added CameraModule.BACK_WIDEST to the cameraModule config.
  • 🚀 Improvements:
    • Improved the document detector with better performance and less memory consumption.
  • 🐞 Bug fixes:
    • Fixed the behavior of the Barcode Scanner when an empty array is set. Now it scans all barcode types for iOS.
  • ⚠️ Breaking Changes:
    • photoQualityPrioritization parameter spelling was fixed in the Document Scanner.
    • Removed autoCancelTimeout parameter from the MRZ Scanner.
    • Removed ScanbotSdk.estimateBlurOnPage method. Use the new ScanbotSdk.analyzeQualityOfDocument method instead.
    • Removed PdfRenderSize enum in favor of PageSize class.
    • The default OCR engine has changed from TESSERACT to SCANBOT_OCR. Please use TESSERACT if you need to recognize non-Latin language texts.
  • 🚙 Under the hood:
    • Changed the behavior of classic components cameraZoomFactor parameter. Now 0..1 maps to the real zoom value in the range 1.0..12.0x on both Android and iOS.
    • Changed the behavior of the barcode data mapper callback.
    • Updated the native iOS Scanbot SDK to 4.1.0 (cf. changelog)
    • Updated the native android Scanbot SDK to 4.1.1 (cf. changelog)

2.13.6 (24 October 2023)

  • 🐞 Bug fixes:
    • Fixed a bug where documentContourListener was not correctly returning DetectionStatus.OK when ignoreBadAspectRatio: true was set.

2.13.5 (16 October 2023)

  • 🐞 Bug fixes:
    • Fixed ScanbotCroppingWidget not showing the image when encryptionEnabled mode is set.

2.13.4 (13 October 2023)

  • 🚀 Improvements:
    • Optimized preview image quality in ScanbotCroppingWidget in Android.
    • Optimized behavior of DocumentScannerCamera. When scanning with ignoreBadAspectRatio: true, the documentContourListener won't return DetectionStatus.OK_BUT_BAD_ASPECT_RATIO.

2.13.3 (4 October 2023)

  • 🐞 Bug fixes:
    • Fixed a focusing issue with the new iPhone 15 Pro and 15 Pro Max.
    • Fixed an issue that prevented the Batch Barcode screen from starting.

2.13.2 (26 September 2023)

  • 🎉 New:
    • Added named parameters originalImageSizeLimit and documentImageSizeLimit to ScanbotSdk.createPage, ScanbotSdk.createPageFromBytes and DocumentClassicScannerConfiguration that limits page images size to this value. If the image size exceeds the limit, the image will be downscaled to fit the limit. Cropped images will never be bigger than the original images.
    • Added ContourConfiguration.showPolygonInManualMode to DocumentScannerConfiguration that allows to show/hide polygon contour when auto-snapping is disabled.
  • 🚀 Improvements:
    • Improved behavior of DocumentScannerCamera. Now it automatically reacts to the changes of DocumentClassicScannerConfiguration.autoSnapEnabled parameter. Hence, you can change this parameter and don't need to call liveDetector.setAutoSnappingEnabled when changing this state by pressing a button.
    • Improved behavior of CroppingController.rotateCw() and CroppingController.rotateCCW(). Now the call can be awaited so you can block UI elements during the rotation animation.
  • 🐞 Bug fixes:
    • Fixed a bug with encryption where EncryptionParameters.password had a default empty value which is not correct. Now password is a required parameter to encrypt the data.
    • Fixed documentation for acceptedAngleScore and acceptedSizeScore in DocumentClassicScannerConfiguration. The range changed to 0-100 in percentage values.
    • Fixed behavior of document contour in DocumentScannerCamera. Now it's the same for both platforms.
    • Fixed DocumentCameraLiveDetector.documentContourListener callback. Now it always returns the detection status on iOS.
    • Fixed crash in iOS when partially filled sub-objects of RTU-UI configurations were set.

2.13.1 (20 September 2023)

  • 🐞 Bug fixes:
    • Fixed a bug in the RTU-UI Document Scanner due to an issue with config parsing.

2.13.0 (15 August 2023)

  • 🎉 New:
    • Added MICRO_QR_CODE barcode format to BarcodeFormat.
    • Added onCameraPreviewStarted callback to custom components to get notified when the camera preview is started. It also runs each time the preview restarts after the picture is taken (Android).
    • Changed behavior of onWidgetReady callback in custom camera components. It is now called when the camera widget is initialized and ready to use. This happens not only once when the widget is created but also when the app returns to the foreground and the user pops to the camera page from another page, if ScanbotCamera.scanbotSdkRouteObserver is registered.
    • Added barcode scanning classic component AR overlay feature.
    • Added BarcodeCameraConfiguration.overlayConfiguration to configure the barcode scanning classic component AR overlay.
  • 🚀 Improvements:
    • Refactored behavior colors. The colors in RTU-UI screens that should be displayed as semi-transparent should be used with alpha as follows: fillColor: Colors.red.withAlpha(150).
  • 🐞 Bug fixes:
    • Fixed bug with ScanbotSdk.refreshImageUris method on Android. Now it renews uris properly.
    • ScanbotCroppingWidget now properly reacts to the Page object changes. If you reassign a new page to the page property (with a new id), it will reset its content and cropping state to the new state.
    • Fixed a bug when the camera is disabled, the document scanner screen could crash on iOS.
  • ⚠️ Breaking Changes:
    • Refactored the structure of ALL RTU-UI scanners configuration classes. Please check example app and documentation for more details.
    • Refactored the way we process and return the data for the Generic Document Scanner and MRZ Scanner. The structure of the result classes for the both scanners are changed to support the GenericDocument structure. Same as the native SDKs. Please check example app and documentation for more details.
    • Refactored imports structure inside scanbot_sdk. Please replace all scanbot_sdk related imports to import 'package:scanbot_sdk/scanbot_sdk.dart'; in your code. For imports with the prefixes please use import 'package:scanbot_sdk/scanbot_sdk.dart' as ScanbotSdk;. Please check example app and documentation for more details.
  • 🚙 Under the hood:
    • Default set of params applied for all RTU-UI scanner configs if not specified explicitly.
    • Added dart library dart:collections v.1.17.1 to the internal usage of scanbot_sdk, json_annotation dependency updated to 4.8.1, environment:sdk tool to >=2.17.0 <4.0.0.
    • Updated the native iOS Scanbot SDK to 2.3.1-Beta4 (cf. changelog)
    • Updated the native android Scanbot SDK to 2.3.0 (cf. changelog)

2.12.1 (9 June 2023)

  • 🐞 Bug fixes:
    • Fixed a crash in the iOS Classic components for when the scanners were closed multiple times.

2.12.0 (8 May 2023)

  • 🎉 New:
    • Added IATA_2_OF_5, INDUSTRIAL_2_OF_5 and CODE_25 barcode formats to BarcodeFormat.
    • Added property recognitionConfidenceValue to McPatientInfoField.
  • 🚀 Improvements:
    • Improved behavior of Classic UI components for asynchronous communication with the native SDK.
  • ⚠️ Breaking Changes:
    • Changed structure of MedicalCertificateRecognizerResult:
      • McInfoBoxSubType renamed to MedicalCertificateCheckBoxType.
      • McPatientInfoFieldType renamed to MedicalCertificatePatientInfoFieldType.
      • MedicalCertificateInfoBox type split into MedicalCertificatePatientInfoField and MedicalCertificateCheckBox.
      • MedicalCertificateInfoBox.patientInfoFields property now available as MedicalCertificateInfoBox.patientInfoBox.patientInfoFields.
      • DateRecord.validationConfidenceValue removed.
    • Removed parameter decodeStacks1D. The decoding of stacked barcodes is now handled automatically.
  • 🚙 Under the hood:
    • Updated the native iOS Scanbot SDK to 2.2.0 (cf. changelog)
    • Updated the native Android Scanbot SDK to 2.2.0 (cf. changelog)

2.11.0 (27 March 2023)

  • 🎉 New:
    • Introduced Classical Components for the Medical Certificate Scanner that allow you to build your own flexible and fully customizable UI for Scanning German Medical Certificates. Use the classes MedicalCertificateScannerCamera and ScanbotCameraController to build a custom document scanner UI.
  • 🚙 Under the hood:
    • Updated the native iOS Scanbot SDK to 2.0.0 (cf. changelog)
    • Updated the native Android Scanbot SDK to 2.0.0 (cf. changelog)

2.10.1 (20 January 2023)

  • 🎉 New:
    • Introduced Classical Components for Cropping Page that allow you to build your own flexible and fully customizable UI for cropping Page Objects. Use the classes ScanbotCroppingWidget and CroppingController to build a custom cropping UI.
  • ⚠️ Breaking Changes:
    • Renamed DetectionResult to DetectionStatus
    • Renamed FinderInsets to Insets
  • 🐞 Bug fixes:
    • Fixed enableCameraButtonTitle and enableCameraExplanationText in EHIC and MRZ Scanners
    • Fixed image saving for classical document scanner on android

2.10.0 (17 November 2022)

  • 🎉 New:
    • Introduced Classical Components for Document Scanning that allow you to build your own flexible and fully customizable UI for the document scanner. Use the classes DocumentScannerCamera, DocumentCameraLiveDetector, and ScanbotCameraController to build a custom document scanner UI.
    • Added GS1 barcode document to BarcodeDocumentFormat.
  • ⚠️ Breaking Changes:
    • Changed file location of Barcode Scanner and Batch Barcode Scanner related classes.
    • Renamed AcceptedDocumentFormat to BarcodeDocumentFormat
    • Renamed CameraOrientationMode to OrientationLockMode
  • 🚙 Under the hood:
    • Updated the native iOS Scanbot SDK to 1.29.0 (cf. changelog)
    • Updated the native Android Scanbot SDK to 1.96.0 (cf. changelog)

2.9.1 (28 September 2022)

  • 🐞 Bug fixes:
    • Fixed compatibility issues with Xcode 14 (build error)
    • Fixed compatibility issues with Kotlin 1.7.10 (build error)

2.9.0 (22 June 2022)

  • 🎉 New:
    • Introduced Classical Components for Barcode Scanning that allow you to build your own flexible and fully customizable UI for the barcode scanner. Use the classes BarcodeScannerCamera, BarcodeCameraLiveDetector and ScanbotCameraController to build a custom scanner UI.
  • 🚀 Improvements:
    • Improved 1D barcode recognition
  • 🚙 Under the hood:
    • Updated the native iOS Scanbot SDK to 1.27.1 (cf. changelog)
    • Updated the native Android Scanbot SDK to 1.94.0 (cf. changelog)

2.8.3 (31 May 2022)

  • 🚀 Improvements:
    • Updated README

2.8.2 (31 May 2022)

  • 🐞 Bug fixes:
    • Fixed compatibility issues with Flutter v3.0.1+

2.8.1 (16 March 2022)

  • 🐞 Bug fixes:
    • Fixed LicenseExpirationDate: Invalid date format.

2.8.0 (8 March 2022)

  • 🎉 New:
    • Introduced the Generic Document Recognizer, providing the ability to scan various types of documents, including German ID cards, German passports and German driver's licenses
    • Added detectBarcodesOnImages in ScanbotSdk for detecting barcodes on multiple still images.
    • Android: Added useCameraX in ScanbotSdkConfig. You can now enable CameraX under the hood.
    • Android: Added allowXnnpackAcceleration in ScanbotSdkConfig which allows controlling whether the XNN pack optimizations should be used.
    • Android: Added allowGpuAcceleration in ScanbotSdkConfig which enables GPU acceleration for TensorFlow ML models.
    • Added the ability to disable auto-focus by locking the lens at the specified lens position. See minFocusDistance in BarcodeScannerConfiguration and BatchBarcodeScannerConfiguration
  • 🚀 Improvements:
    • Improved Aztec barcode recognition.
    • Improved PDF417 recognition performance on single photos.
    • Improved barcode detection on large documents.
    • Improved GS-1 databar recognition in the next-gen barcode scanner.
  • 🐞 Bug fixes:
    • Fixed LicenseExpirationDate returning the incorrect time.
  • ⚠️ Breaking Changes:
    • Renamed detectBarcodeFromImageFile parameter to detectBarcodesOnImage
  • 🚙 Under the hood:
    • Updated the native iOS Scanbot SDK to 1.24.1 (cf. changelog)
    • Updated the native Android Scanbot SDK to 1.91.0 (cf. changelog)

2.7.0 (3 Dec 2021)

  • 🎉 New:
    • Added createPageFromBytes function to create a page object without storing a temporary image object outside the SDK
    • Added support for AcceptedDocumentFormats in BarcodeScannerConfiguration, BatchBarcodeScannerConfiguration and detectBarcodeFromImageFile
  • 🚀 Improvements:
    • Significant performance improvements for all scanners
  • 🚙 Under the hood
    • Updated the native iOS Scanbot SDK to 1.21.2 (cf. changelog)
    • Updated the native Android Scanbot SDK to 1.89.1 (cf. changelog)
  • 🐞 Bug fixes:
    • Fixed CroppingResult.error() return for CroppingResult object in the page cropping component

2.6.0 (23 Jul 2021)

  • 🎉 New:
    • Brand new "Next Generation" machine-learning-based barcode scanning engine with improved reliability and much faster performance
    • API changes for the new barcode engine: added engineMode property of type EngineMode on barcode scanning APIs - BarcodeScannerConfiguration and BatchBarcodeScannerConfiguration to switch between the legacy barcode engine and the new Next Generation barcode engine. By default, the new engine is used.
    • Added the new cameraZoomFactor property in BarcodeScannerConfiguration for configuring the zoom level of the camera.
    • Added support for MSI Plessey barcodes.
  • 🚙 Under the hood
    • Updated the native iOS Scanbot SDK to 1.19.3 (cf. changelog)
    • Updated the native Android Scanbot SDK to 1.85.1 (cf. changelog)
  • ⚠️ Breaking Changes:
    • Removed enableHighSensitivityMode property on BarcodeScanner, because it is no longer needed

2.5.0 (2 Jun 2021)

2.4.1 (1 Apr 2021)

  • 🐞 Bug fixes:
    • iOS: Fixed a mapping issue of the config parameter flashButtonHidden in the Document Scanner.

2.4.0 (30 Mar 2021)

  • 🎉 New:
    • Add null safety support for the SDK.
  • ⚠️ Breaking Changes:
    • Due to null safety support update please follow compilation issues and warnings from 'flutter analyze' command
    • Updated minimum dart sdk to 2.12.0-0 and flutter to 2.0.1

2.3.0 (11 Mar 2021)

  • 🎉 New:
    • Encryption for images, PDF, and TIFF files, generated by the SDK. For more details please check out the section Storage Encryption.
    • Blur estimation feature. See the new API function estimateBlurOnPage.
  • 🐞 Bug fixes:
    • iOS: Multiple UI fixes for barcode scanners.
  • 🚙 Under the hood:
    • Updated the native iOS Scanbot SDK to 1.14.0 (cf. changelog)
    • Updated the native Android Scanbot SDK to 1.80.0 (cf. changelog)

Version 2.2.2 (16 Feb 2021)

  • ⚠️ Breaking Changes:
    • Android compileSdkVersion is set to 30
    • Increase flutter min support version to 1.22.6
  • 🐞 Bug fixes:
    • Fix compilation for compileSdkVersion 30 for android

Version 2.2.1 (12 Feb 2021)

  • 🐞 Bug fixes:
    • Added missing permission text properties enableCameraButtonTitle and enableCameraExplanationText to DocumentScannerConfiguration

Version 2.2.0 (12 Feb 2021)

  • 🎉 New:
    • Batch Barcode Scanner - a new RTU-UI screen component to scan multiple barcodes in a row. See the new API function startBatchBarcodeScanner.
    • Added barcode detection from still images, see detectBarcodeFromImageFile.
    • New result field BarcodeItem.rawBytes that contains the raw bytes from the scanned barcode.
  • ⚠️ Breaking Changes:
    • Replaced finderAspectRatio parameter with finderWidth and finderHeight in BarcodeScannerConfiguration and MrzScannerConfiguration.
  • 🚙 Under the hood:
    • Updated the native Android Scanbot SDK to 1.77.2 (cf. changelog)
    • Updated the native iOS Scanbot SDK to 1.13.0 (cf. changelog)

Version 2.1.0 (15 Dec 2020)

  • 🐞 Bug fixes:
    • iOS: Introduced a new API method refreshImageUris(pages) to fix image file paths after app updates. For more details please check out the section Persistence of Page Objects.
    • iOS: Fixed de-/serialization of the property Page.detectionStatus.

Version 2.0.1 (28 Nov 2020)

  • 🚀 Improvements:
    • iOS: Swift 5 support

Version 2.0.0 (30 Oct 2020)

  • 🎉 New:
    • A new Machine Learning based approach for document detection. See the new SDK initialization parameter documentDetectorMode.
    • Barcode Scanner: Added barcode data parsers for several document types. See the new result field BarcodeItem.formattedResult as well as the corresponding implementations of BarcodeFormattedResult.
  • 🚀 Improvements:
    • Android: Some big improvements in the Document Scanner UI that make document scanning perform better and much smoother. Decreased start-up time of the camera preview. Faster saving of the snapped pages. Optimized performance of the image processing for simple operations (rotate, crop, resize).
    • Barcode Scanner: Multi-barcode scan support!
  • ⚠️ Breaking Changes:
    • Android: Migrated to Android embedding v2
    • Android: Raised minSdkVersion to 21
    • iOS: Dropped support for iOS 9 and iOS 10!
  • 🚙 Under the hood:
    • Upgraded the native Scanbot Android SDK to v1.74.0 (cf. changelog)
    • Upgraded the native Scanbot iOS SDK to v1.11.6 (cf. changelog)

Version 1.1.4 (29 Sep 2020)

  • 🚀 Improvements:
    • iOS: Changed presenter logic for all Scanbot SDK RTU-UI screens.

Version 1.1.3 (27 Aug 2020)

  • 🐞 Bug fixes:
    • iOS: Fixed a mapping issue of the config parameter doneButtonTitle in Cropping UI.

Version 1.1.2 (28 May 2020):

  • 🚀 Improvements:
    • OperationResult.CANCELED when the user presses cancel in any Scanbot UI screen component

Version 1.1.1 (13 May 2020):

  • 🐞 Bug fixes:
    • Android: Fixed a bug with mappings of OCR language data files (zh-Hans and zh-Hant to chi_sim.traineddata and chi_tra.traineddata).

Version 1.1.0 (9 Dec 2019):

  • 🎉 New:
  • 🚀 Improvements:
    • Improved OCR API. The OCR results now contain bounding boxes and values of recognized words, lines and paragraphs. See the API docs of OcrResult.pages for more details.
  • 🐞 Bug fixes:
    • iOS: Fixed file URI handling in the native implementation of the createPage() method.

Version 1.0.0 (6 Nov 2019):

  • 🎉 First release.

Want to scan longer than one minute?

Generate your free "no-strings-attached" Trial License and properly test the Scanbot SDK.

Get your free Trial License

What do you think of this documentation?