Changelog for the React Native Barcode Scanner SDK
tip
For additional details about the API, please refer to our API reference documentation.
Version 8.0.0 (23 Feb 2026)β
- π New:
- General:
- The SDK now supports a new license key format, which does not contain special characters or line breaks.
- Introduced the
ScanbotImageProcessorobject to encapsulate and manage all SDK functionalities related to image processing. - All of the API functions that accept an image file URI as an input, now accept both image file URI and
ImageRefobject. - Added a new property
processingModeto all scanner configuration types to enhance processing flexibility. - Added a new property
cameraLiveScannerResolutiontoCameraConfigurationfor configuring live scanner resolution in all RTU-UI scanners. ImageRefnow supports HEIC images.
- Barcode Scanner:
- Introduced the
ScanbotBarcodeobject to encapsulate and manage all SDK functionalities related to barcode scanning. - Added a new API
parseDocumentfor parsing barcode documents from raw text values. - Added a new API
scanFromPdffor scanning barcodes from PDF documents. - New supported document parser for British Columbia driver licenses PDF417 codes.
- Introduced a new algorithm for recognizing 1D symbologies (except EAN and UPC), enhancing performance with blurred and distant barcodes. This feature is enabled by default but can be turned off using the
enableOneDBlurScannerproperty in barcode format configurations on low-power devices if necessary. - Added a new barcode scanner engine mode called
NEXT_GEN_MAX_DISTANCE, which is optimized for scanning from far distances on very high-power devices with a 4K video stream. - All 1D barcode formats can be configured with a new
oneDConfirmationModewhich isTHOROUGHby default. Setting it toMINIMALorNONEcould lead to higher recall in difficult scenarios, but could also cause more false positives. - ScanbotBarcodeCameraView:
- Added a new callback
onErrorthat is triggered when an error occurs while using the component.
- Added a new callback
- Introduced the
- General:
- π Improvements:
- General:
- All APIs can now return more complete errors with error messages.
- The "Created TensorFlow Lite XNNPACK delegate for CPU." log is no longer an output in production builds.
- When creating an
ImageReffrom a .png file containing an alpha channel, they are blended with a user specified canvas color instead of simply discarding the alpha channel. It is possible to select whether to use aWHITEorBLACKbackground inPathImageLoadOptionsandBufferImageLoadOptions. - Android: Optimized memory usage of Scanbot Camera components.
- Android: Improved RTU UI component padding behavior for finder view and action bars.
- iOS: Camera sessions no longer show a black screen in case of license error. Instead, the camera runs but the detection fails with appropriate license error.
- iOS: Implemented
keepScreenOnproperty for all RTU UI screens to prevent the system from going idle or entering the lockscreen while scanning.
- Barcode Scanner:
- Improved quiet zone checks for the barcode format
PharmaCodeto reduce the false positive rate. - Reduced the false positive rate of blurred barcodes in live mode when the barcode is only partially visible.
- Improved quiet zone checks for the barcode format
- General:
- π Bug fixes:
- General:
- Android: Fixed issues related to edge-to-edge warnings in Google Play Store for RTU-UI screens.
- Android: Fixed dependencies clash related to material icons in RTU-UI screens.
- Barcode Scanner:
- Android: Fixed an issue where the use case could not find
UPCandEANbarcodes with extensions in RTU-UI screen. - iOS: Fixed a bug in Barcode RTU-UI Multiple Scanning Mode where the count of the sheet button was not updated properly.
- Android: Fixed an issue where the use case could not find
- General:
- β οΈ Breaking changes:
- General:
- Renamed
initializeSdktoinitializeinScanbotBarcodeSDK, updated its argument type toSdkConfiguration(fromScanbotBarcodeSdkConfiguration), and changed its return type toLicenseInfo(fromLicenseInfoResult). - Removed the
ScanbotBarcodeSdkConfigurationtype. The initialize method now requires an instance of theSdkConfigurationclass. Update your initialization code accordingly. - Removed
LicenseInfoResultin favor of the newLicenseInfoclass. Update your code to use theLicenseInfoclass for license information retrieval. - Removed
extractImagesFromPDFand associated types. - Renamed
cleanuptocleanupStorage.cleanupStoragedoes not return any value now. - Renamed
getImageDatatoreadImageDataand moved it toScanbotImageProcessor. - Renamed property
roitocropRectin all image load options types for better clarity. - Renamed class
CategoriestoCategory. - Renamed class
LanguagestoLanguage. - Replaced type literal
IF_AVAILABLEwithAUTOinEncryptionMode. - Removed
clone()method fromImageRef.
- Renamed
- Barcode Scanner:
- Renamed
startBarcodeScannertostartScannerand moved it toScanbotBarcode. - Renamed
detectBarcodesOnImagetoscanFromImageand moved it toScanbotBarcode. - Changed the type of the
scannerConfigurationproperty inBarcodeScannerScreenConfigurationfromCommonBarcodeScannerConfigurationtoBarcodeScannerConfiguration. - The
MICRO_QR_CODEbarcode format has been removed from the list of common barcode formats.
- Renamed
- General:
- π Under the hood:
- Upgraded the native Scanbot Android SDK to v8.0.1.
- Upgraded the native Scanbot iOS SDK to v8.0.1.
- Updated
libzuecilib dependency to 1.0.1. - Added
snowflake-arctic-embed-xslib dependency toeadfba3b. - Android: The SDK Project has been switched to
compileSdk = 36. - Android: The SDK Project has been switched to AGP 8.10.1.
- Android: The SDK Project has been switched to Kotlin 2.1.21.
- Android: Updated
Daggerlib dependency to 2.56.2. - Android: Updated
Kotlin Standard Librarydependency to 2.1.21. - Android:
libittnotifyis no longer linked.
Version 7.1.2 (5 Nov 2025)β
- π New:
- Barcode Scanner:
- Barcode configurations for 1D barcode types have a new field
minimumNumberOfRequiredFramesWithEqualRecognitionResultthat requires this number of frames on which the barcode has to be detected.
- Barcode configurations for 1D barcode types have a new field
- Barcode Scanner:
- π Bug fixes:
- General:
- Android: Fixed 16 kb page size support for TFLite native library.
- General:
- β οΈ Breaking changes:
- Barcode Scanner:
- The field
minConfirmationsStandaloneEANinBarcodeAccumulationConfigurationwas moved and renamed to the fieldminimumNumberOfRequiredFramesWithEqualRecognitionResultExtensionlessinBarcodeFormatUpcEanConfiguration.
- The field
- Barcode Scanner:
- π Under the hood:
- Upgraded the native Scanbot iOS SDK to v7.1.4.
- Upgraded the native Scanbot Android SDK to v7.1.2.
Version 7.1.1 (29 Sep 2025):β
- π Improvements:
- Barcode Scanner:
- Android: Improved handling of back action with multiple dialogs and bottom sheets.
- General:
- Android: Changed permissions for mock camera to android.permission.READ_MEDIA_IMAGES and android.permission.READ_MEDIA_VIDEO for API >= 33, and READ_EXTERNAL_STORAGE for API < 33.
- Barcode Scanner:
- π Bug fixes:
- Barcode Scanner:
- Android: Fixed an issue where the
extractedDocumentwas not being generated for GS1 HandlingDecodeStructureandDecodeFull. - Android: Fixed an issue where the back button navigation did not work in Barcode Scanner RTU UI v2.
- ScanbotBarcodeCameraView:
- Android: Fixed an issue where navigating away from the screen that contains the component caused a crash.
- Android: Fixed an issue where the
- General:
- Android: Fixed an issue with the black preview in ScanbotCameraXView when the camera selected a square resolution on some Samsung and Xiaomi devices.
- Android: Prevent throwing exception when /sys/devices/system/cpu/cpufreq doesn't exist.
- Barcode Scanner:
- π Under the hood:
- Upgraded the native Scanbot Android SDK to v7.1.1.
- Upgraded the native Scanbot iOS SDK to v7.1.2.
Version 7.1.0 (18 Aug 2025):β
- π New:
- Barcode Scanner:
BarcodeItemhas new properties:- extendedQuad and extendedQuadNormalized that represent extended quads for 1D barcodes.
- rawBytesEncodings that contains the precise character encoding information of
rawBytes. - structuredAppendInfo that contains the messages split across multiple barcodes.
- globalIndex to identify a barcode across multiple frames.
BarcodeScannerUiResulthas a new property selectedZoomFactor to retrieve the zoom factor used for the barcode scanning.BarcodeScannerConfigurationhas a new property accumulationConfig that allows the accumulation of barcodes over multiple frames in live mode.CameraConfigurationhas new properties:- fpsLimit to limit the rate of detections per second in normal performance mode.
- iOS: hardwareButtonsEnabled to enable zooming using the camera control button (iPhone 16 series).
- Added a new API mockCamera that allows injecting an image to simulate a video stream to the scanner camera session for UI testing. See this example.
- ScanbotBarcodeCameraView:
- Introduced a new optional callback onBarcodeTap, which is triggered when the user taps on a barcode AR overlay.
- Added a new property
accumulationConfiginBarcodeCameraViewScannerConfigurationfor configuring accumulated barcodes across multiple frames in live mode. - Added a new property
optimizedForOverlaysinBarcodeCameraViewScannerConfigurationthat is used to produce more stable barcode outlines across frames.
- General:
- Android:
ScanbotBarcodeSdkConfigurationhas a new property performanceHintApi which significantly improves multithreading performance on devices that support the Hint Session (e.g. Pixel 9 Pro and Samsung S24 Ultra).
- Android:
- Barcode Scanner:
- π Improvements:
- Barcode Scanner:
- All Barcode AR overlays are now based on
extendedQuads. - Boarding pass document parser now supports up to version 8 of the IATA-BCBP standard.
- Improved vCard document parser.
- Android: Improved ScanbotBarcodeCameraView preview size selection strategy for square screens.
- All Barcode AR overlays are now based on
- General:
- Android: Improved the algorithm of high performance cores computation as the old one didn't work correctly on some devices (e.g., Pixel 9 Pro).
- Android: Integrated Android Performance Hint Session for faster multithreading on supported devices (e.g., Pixel 9 Pro, Samsung S24 Ultra).
- Barcode Scanner:
- π Bug Fixes:
- Barcode Scanner:
- The carrier identifier for MaxiCode mode 3 might be encoded by using different codewords. Now all possible codewords are checked that encode the carrier identifier.
- vCard document parser now correctly processes the
FNkey asFormattedName. - Android: Fixed handling of the back actions for modal dialogs in the RTU-UI screens.
- PDF Image Extractor:
- iOS: Fixes wrong orientation of extracted images when the PDF page has a transform applied.
- Storage Crypting:
- iOS: Fixed data corruption issues in AES encryption/decryption that could result in corrupted or partially corrupted files.
- Barcode Scanner:
- β οΈ Breaking Changes:
- Barcode Scanner:
- ScanbotBarcodeCameraView: Removed
automaticSelectionEnabledproperty fromSelectionOverlayConfig. Each scanned barcode is sent to theonBarcodeScannerResultcallback.
- ScanbotBarcodeCameraView: Removed
- General:
- Android: Removed
useCameraXproperty fromScanbotBarcodeSdkConfiguration.
- Android: Removed
- Barcode Scanner:
- π Under the Hood:
- Upgraded the native Scanbot Android SDK to v7.1.0.
- Upgraded the native Scanbot iOS SDK to v7.1.0.
- Added flatbuffers 2.0.6.
Version 7.0.1 (1 Jul 2025):β
- π Under the hood:
- Support for RN 0.80.
Version 7.0.0 (6 Jun 2025):β
- π New:
- Added support for barcode types Pharma Code, Pharma Code Two Track and PZN (Pharmazentralnummer).
- Added support for the HIBC barcode document format.
- Added support for advanced configuration of on-image barcode scanning. See more here BarcodeScannerConfiguration.
- Added the ability to configure the Barcode Scanner using the common barcode configuration, see BarcodeFormatCommonConfiguration.
- Added an option to ignore barcodes that do not decode to one of the accepted document formats for
BarcodeScannerConfiguration. See more here: BarcodeScannerConfiguration.onlyAcceptDocuments. - Added new engine modes
NEXT_GEN_FAR_DISTANCEandNEXT_GEN_LOW_POWER_FAR_DISTANCE.NEXT_GEN_FAR_DISTANCEis optimized for scanning from far distances.NEXT_GEN_LOW_POWER_FAR_DISTANCEis optimized for scanning from far on low-power devices.
- Added new predefined subsets of barcode formats (1D, 2D, Postal, Pharma, etc.). See more here: BarcodeFormats.
- Barcode scanning results have been enhanced with more detailed information. See more here: BarcodeItem.
- Added the ability to return the barcode image in the result. See more here: BarcodeScannerConfiguration.returnBarcodeImage.
- Images returned in scanner results are now represented as image references. They can be converted to base64 or saved in a provided path. See more here: ImageRef.
- Introduced
strictModefor certain barcode configurators. If this mode is disabled, it should allow for a higher detection rate in difficult scenarios, but with the possibility that false positive results may occur. Currently, we supportstrictModeforQR_CODE,MICRO_QR_CODE,RMQR_CODE,PDF_417,MICRO_PDF417andGS1_COMPOSITE. - Android: Added an option to the RTU-UI Barcode Scanner screen for keeping the screen on.
- ScanbotBarcodeCameraView: Added property
hardwareButtonsEnabledwhich toggles the original volume button behavior on iOS 17.2 and above.
- π Improvements:
- Improved quiet zone checks for the barcode formats
ITF,CODE_11,MSI_PLESSEY,IATA_2_OF_5,INDUSTRIAL_2_OF_5andCODE_25. - Improved the false positive rate for ITF barcodes.
- Improved our Barcode Scanner with a significant speed-up in live mode on very large input resolutions.
- Improved the recognition of PDF417 barcodes in the Barcode Scanner.
- Improved the Barcode Scanner to better recognize QR codes if the top left finder pattern is corrupted (up to QR code version size 20).
- More robust QR code recognition, more tolerance for destroyed or missing timing patterns and alignment patterns and a better performance on artistic QR codes.
- QR codes with non-square finder patterns and QR codes embedded in adversarial backgrounds (flow codes and more generally) can now be recognized.
- Improved barcode detection for various barcode types.
- Improved the performance when scanning four state postal barcodes (i.e. Australia Post, Japanese Post, RM4SCC, Royal TNT Post and USPS Intelligent Mail).
- By default, Code 93 now includes check digits in the result. To disable this and restore the previous behavior, set
stripCheckDigits = true. - Improved the recognition of PDF417 barcodes in the Barcode Scanner.
- Improved the Barcode Scanner to better recognize QR codes if the top left finder pattern is corrupted (up to QR code version size 20).
- GS1 Composite codes are now processed faster in Scan from Image mode.
- Improved quiet zone checks for the barcode formats
- π Bug fixes:
- Fixed checksum for
CODE_39barcode format. - Fixed the returned results for all types of
UpcEanExtensionBehavior. - Fixed an issue when scanning Code 93 barcodes with
stripCheckDigits = false(default), and the check digit is an extension character. - iOS: Fixed processing of still images of an indexed color space model in the Barcode Scanner.
- iOS: Fixed a bug in the AR Barcode Scan and Count where the scanner would be stuck if there was no barcode detected.
- iOS: Fixed a bug in the Barcode Scanner RTU-UI v2 where the flip camera button was not resetting the widest camera available if chosen.
- iOS: Fixed a UI bug in the Barcode Scanner RTU-UI v2 where the sheet button overlapped with the action bar.
- iOS: Fixed an issue where quickly stopping and starting the camera session of any scanner screen could lead to a crash or unpredictable behavior.
- Android: Fixed an overflow when decoding a
MICRO_QR_CODEbarcode format with wrong bits in numeric mode. - Android: Fixed
minimumTextLengthforITFbarcode format. Before, we used it to check the number of symbols instead of the true text length. - Android: Fixed sorting of quad points for four-state/postal barcode types.
- Android: Fixed quad when flag
BarcodeFormatConfigurationBase.addAdditionalQuietZoneis enabled. - Android: In RTU-UI v2, the modal dialog no longer appears below the status bar.
- Android:
FindAndPickScanningMode.sheetContent.barcodeItemImageVisiblein RTU-UI v2 now correctly applies the visibility setting. - Android: Accessibility content for action buttons in RTU-UI v2 is now properly applied.
- Android: Fixed a crash that occurred when parsing an HIBC document in the Barcode Scanner.
- Android: Fixed the camera preview size selection algorithm with a square aspect ratio.
- Android: Fixed the resolution strategy for the square preview.
- Android: Fixed a crash with barcode launcher initialization when the SDK was not yet initialized in Barcode RTU-UI v2.
- Fixed checksum for
- β οΈ Breaking Changes:
- No need for specific import from
react-native-scanbot-barcode-scanner-sdk/ui_v2. Everything should be imported from the defaultreact-native-scanbot-barcode-scanner-sdkpath. - Removed RTU-UI v1
startBarcodeScanner,closeBarcodeScanner,startBatchBarcodeScannerandcloseBatchBarcodeScannerdeprecated APIs along with all related types. ResultWrapperhas been removed from all API responses, except those returned by RTU-UI.startBarcodeScannerAPI is part ofScanbotBarcodeSDKobject. The input configuration and result objects were changed. See more here: ScanbotBarcodeSDK.startBarcodeScanner.initializeSdkAPI now returns a result of typeLicenceInfoResultinstead of a status.- The input parameters and result objects for
detectBarcodesOnImageAPI were changed. See more here: ScanbotBarcodeSDK.detectBarcodesOnImage. - Type literals for
BarcodesExtensionFilter,BarcodeScannerEngineModeandFieldValidationStatushave been modified. - Renamed type
BarcodeScannerConfigurationtoBarcodeScannerScreenConfiguration. - Renamed types
BarcodeMappedData.barcodeImageKeytoBarcodeMappedData.BARCODE_IMAGE_KEYandExpectedBarcode.barcodeImageKeytoExpectedBarcode.BARCODE_IMAGE_KEY. - Renamed types
MSIPlesseyChecksumAlgorithmtoMsiPlesseyChecksumAlgorithm,EngineModetoBarcodeScannerEngineMode,Gs1HandlingModetoGs1HandlingandValidationStatustoFieldValidationStatus. - Replaced type
BarcodeTypewithBarcodeFormat. - Replaced property
recognizerConfigurationof typeBarcodeRecognizerConfigurationwithscannerConfigurationof typeCommonBarcodeScannerConfiguration. - ScanbotBarcodeCameraView:
detectorConfigwas replaced withbarcodeScannerConfiguration. See more here: ScanbotBarcodeCameraViewProperties.barcodeScannerConfiguration.- The parameter for the
onBarcodeScannerResultcallback is now of typeBarcodeItem[]. - The parameter for the
barcodeItemOverlayViewBindercallback is now of typeBarcodeItem.
- No need for specific import from
- π Under the hood:
- The regex filters are applied for substrings instead of the entire output string.
- Upgraded the native Scanbot Android SDK to v7.0.2.
- Upgraded the native Scanbot iOS SDK to v7.0.2.
- Upgraded nlohmann::json to 3.11.3.
- Upgraded xsmid to 13.2.
- Upgraded xtl to 0.8.
- Upgraded xtensor to 0.26.0-scanbot.
- Upgraded yaml-cpp to 0.8.
- Upgraded spdlog to 1.15.2.
- Upgraded Boost to 1.88.
- iOS: Upgraded CLI11 to 2.5.
- Android: Upgrade OpenCV to 4.10.
- Android: Updated Compile Sdk to 35.
- Android: Android Jetpack Compose updated to 1.7.8.
Version 6.2.1 (17 Mar 2025):β
- π New:
- Added a new
refreshRateproperty toBarcodeItemOverlayViewConfig.
- Added a new
- π Bug fixes:
- Android: When the
barcodeItemOverlayViewBindercallback is set, thetextFormatproperty in theselectionOverlayConfigfor the Classic UI is considered.
- Android: When the
Version 6.2.0 (10 Feb 2025):β
- π New:
- Added a new callback
barcodeItemOverlayViewBinderas a part ofSelectionOverlayConfiginScanbotBarcodeCameraView, that configures the selection overlay for each barcode item individually.
- Added a new callback
- π Improvements:
- Android: Improved
ScanbotBarcodeCameraViewresolution selection strategies for scanning and preview cases. - Android: Scanbot SDK initialization uses application context under the hood. Even if the activity context is not ready at that moment, the SDK will still be initialized.
- Android: Improved
- π Bug fixes:
- iOS: Fixed a bug in the barcode RTU-UI v2 action bar items where the
accessibilityDescriptionwas not being applied correctly.
- iOS: Fixed a bug in the barcode RTU-UI v2 action bar items where the
- β οΈ Breaking Changes:
shouldHighlightBarcodecallback is removed fromSelectionOverlayConfiginScanbotBarcodeCameraViewtogether with highlighted color properties. Please use the newbarcodeItemOverlayViewBindercallback that configures the selection overlay for each barcode item individually.
- π Under the hood:
- Support for RN 0.77.
- Upgraded the native Scanbot Android SDK to v6.2.1.
- Upgraded the native Scanbot iOS SDK to v6.2.0.
- Upgraded the
@expo/config-pluginsdependency to v9.0.14. - Android: Updated androidx camerax 1.4.1 with 16kb page support.
- iOS: Removed third-party-library symbols from the binary to avoid linking conflicts.
Version 6.1.0 (11 Dec 2024):β
- π New:
- Added a new API,
getImageData, that returns a base 64 encoded representation of the image data. - Added support for new barcode types Maxicode, rMQR code, Code 11 and Code 32. Added literals that represent the new barcode types in
BarcodeFormat. - Added a new optional property
addAdditionalQuietZoneinDetectBarcodesOnImageArguments. The default value is false. - Added a new property
accessibilityDescriptioninRoundButtonandButtonConfiguration. - Added a new property
allowEmptySubmissioninMultipleScanningModeto allow submission of an empty barcode list in the Multiple Barcodes use case in RTU-UI v2. - Added new optional properties
useIATA2OF5Checksum,useCode11ChecksumandaustraliaPostCustomerFormatinBarcodeScannerConfiguration,BatchBarcodeScannerConfiguration,BarcodeRecognizerConfigurationandDetectBarcodesOnImageArguments. - Added the ability to display the scanned barcode's image in the RTU-UI v2 Barcode Scanner
FindAndPickScanningModeUseCaseby specifyingExpectedBarcode.barcodeImageKeyfor the expected barcode'simageproperty. - Added a new type literal
CONFIRMEDinValidationStatustype inGenericDocument. - Added a new type literal
NONEinCommonFieldTypetype used inGenericDocument. - iOS: Added a new property
displayTextinGenericDocument.TypeandField.Type. - iOS: Added new zoom control slider controlled by the new camera control button on all view controllers. Available on all the new iPhone 16 models.
- Android: Added support for 16KB page size (Android 15).
- Android: Added a new property
polygonInRootinFieldtype used inGenericDocument.
- Added a new API,
- π Improvements:
- Improved detection of
UPCandEANextensions. - Added support for Extended Channel Interpretation (ECI) for Datamatrix and Aztec barcodes.
- For
CODE_128andITF, we improved the recognition of barcodes generated by defective thermal printers that do not print certain black bars correctly.
- Improved detection of
- π Bug fixes:
- Fixed KANJI mode for QR codes.
- iOS: Fixed a UI issue in the RTU-UI v2 Barcode Scanner
FindAndPickScanningModeUseCasethat never showed the expected barcodes title, but always the barcode value. - iOS: Fixed a UI issue in the RTU-UI v2 Barcode Scanner
FindAndPickScanningModeUseCasein button sheet mode where the counter badge was not visible. - iOS: Fixed a UI issue on the RTU-UI v2 Barcode Scanner's sheet screen where the subtitle label was being vertically cut off.
- iOS: Fixed a UI issue on the RTU-UI v2 Barcode Scanner's confirmation sheet in the
SingleScanningModeUseCasewhere the loading indicator was not centered when the loading message was hidden. - iOS: Fixed a UI issue in the RTU-UI v2 Barcode Scanner where a title that was too long would cut off the cancel button.
- iOS: Fixed a UI issue in the RTU-UI v2 Barcode Scanner's finder where the background color overlapped with the line color.
- iOS: Fixed a bug in RTU-UI v2 Barcode Scanner where extended barcodes are displayed along with their non-extended versions.
- iOS: Fixed a bug that did not mirror the front camera as expected.
- iOS: Fixed a crash in scanners when setting the same
minZoomandmaxZoominZoomRange. - Android: Fixed R8 obfuscation config for SDK logging classes.
- Android: Minor fixes for appearance in RTU-UI v2 Barcode Scanner to make it consistent with its iOS counterpart.
- Android: Fixed an issue with AR Overlay and barcode mapping in RTU-UI v2 Barcode Scanner, where the mapped image wasn't shown on the AR Overlay until the same barcode appeared in the list below.
- β οΈ Breaking Changes:
- React Native SDK 0.73 is the minimum supported version.
- Removed property
codeDensityfromBarcodeScannerConfiguration,BatchBarcodeScannerConfigurationandDetectBarcodesOnImageArguments. - Removed
DetectBarcodesOnImagesField,DetectBarcodesOnImageResultandExtractImagesFromPdfResultinterfaces. - Removed type literals
VALIDATEandDECODEand replaced them withVALIDATE_STRUCTURE,DECODE_STRUCTURE,VALIDATE_FULLandDECODE_FULLinGs1HandlingMode. - Changed the default values for properties
okButton,cancelButtonandactionButtoninScanbotAlertDialog. - Changed the default values for properties
enableCameraButtonandcloseButtoninCameraPermissionScreen. - Changed the default value for property
visibleinArOverlayFindAndPickConfigurationto true forFindAndPickScanningMode. - Replaced
standardandvalidationStatusfields withvalidationErrorsin theGS1.Elementclass. - Renamed
RootTypeNametoBarcodeDocumentModelRootTypeand also renamed the inherited document types. - Android: Changed
barcodesRegexFilterbehavior inBarcodeRecognizerConfigurationforBarcodeScannerConfigurationconfig for RTU-UI v2 Barcode Scanner. Barcodes are accepted if the barcode data contains the part that matches the regex.
- π Under the hood:
- Upgraded the native Scanbot Android SDK to v6.1.1.
- Upgraded the native Scanbot iOS SDK to v6.1.1.
- Added gs1-syntax-dictionary lib.
Version 5.1.1 (13 Sep 2024):β
- π New:
- Expo config plugin is now available for Expo projects. Learn more about it here.
- π Bug fixes:
- iOS: Fixed a crash when navigating away from a screen that contains
ScanbotBarcodeCameraView. - Android: Fixed the camera not starting while navigating between screens that contain
ScanbotBarcodeCameraView.
- iOS: Fixed a crash when navigating away from a screen that contains
Version 5.1.0 (9 Jul 2024):β
- π New:
- Added new freshly designed RTU-UI version 2 for Barcode scanning with advanced agile configuration. Import
startBarcodeScannerfromreact-native-scanbot-barcode-scanner-sdk/ui_v2to leverage the new UI. See our updated documentation for a full set of examples and use cases. - Added support for the
MICRO_PDF_417barcode format. - Added support for parsing of AAMVA Certificate of Title for motor vehicle barcodes.
- ScanbotBarcodeCameraView:
- Added new property
cameraZoomRangewhich sets the range of valid camera zoom factors. - Added new property
cameraModulewhich sets the camera device being used for scanning. - Added new property
minFocusDistanceLockwhich locks focus distance within minimum possible range. - Added new methods
freezeCameraandunfreezeCamerawhich control the camera preview. - Added new config
selectionOverlayConfigwhich configures the selection overlay. - Android: Added new property
minPaddingwhich sets initial padding for insets. - iOS:
lowPowerModeproperty is now configurable for iOS.
- Added new property
- Added new freshly designed RTU-UI version 2 for Barcode scanning with advanced agile configuration. Import
- π Improvements:
- Optimized camera preview quality and processing speed for all scanners.
- Improved detection of UPC/EAN barcode extensions in live mode.
- The barcode scanner now supports transposed (mirrored/flipped) Aztec barcodes.
- iOS: Added support of haptic feedback on capable devices.
- iOS: Improved speed and image quality of still image capturing.
- iOS: Important: The default rear camera in all scanners has been changed from the ultra-wide or wide camera to the triple or dual camera.
- Android: Changed the touch to focus square in the native camera view to a circle.
- ScanbotBarcodeCameraView:
- Improved overall performance and reliability.
- Consistency between the behaviors on Android and iOS.
- π Bug fixes:
- iOS: Some params from
DetectBarcodesOnImageArgumentswere not applied in the scanner configuration. - Android: Fixed an issue with misaligned barcode polygons on some devices with horizontal orientation.
- Android: For
BarcodeFormat.PDF_417, a single case to generate clusters was not covered, which led to a crash. - Android:
BarcodesExtensionFilternow accepts EAN and UPC barcodes with extensions only and all other formats without extensions.
- iOS: Some params from
- β οΈ Breaking changes:
- 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.
- The structure of barcode formatted results has been changed from record classes to using
GenericDocument. See API reference for the new structure (https://api-docs.scanbot.io/barcode-scanner-sdk/react-native/v7.0.0/). This change affects RTU UI v1, however, the same structures are used across RTU UI v1 and RTU UI v2. - Renamed
BarcodeFormat.RSS_14toBarcodeFormat.DATABARandBarcodeFormat.RSS_EXPANDEDtoBarcodeFormat.DATABAR_EXPANDED. - Renamed
GetLicenseInfoResultinterface toLicenseInfoResult. - 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.
- Android: Removed
BarcodeFormat.CODE_25fromCOMMON_CODESlist. - Android: 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.
- ScanbotBarcodeCameraView:
- Decoupled all the properties from
configurationprop and subdivided by configurations. - Child views are no longer added natively. There is a dedicated container that holds views.
- Renamed
shouldUseFinderViewtoviewFinderEnabled. - Renamed
finderAspectRatiotorequiredAspectRatio. - Removed
finderBackgroundColorandfinderBackgroundOpacityin favor ofoverlayColor.overlayColoracceptsColorValuethrough which opacity can be set.
- Decoupled all the properties from
- π Under the hood:
- Upgraded native Scanbot Android Barcode Scanner SDK to v5.1.2
- Upgraded native Scanbot iOS Barcode Scanner SDK to v5.1.3
- iOS: Added third-party library libzueci version 1.0.0.
- Android: Updated 3rd-party libraries: libjpeg-turbo to 2.1.5.1, libpng to 1.6.40 and libtiff to 4.6.0.
- Android: Added more rules for R8 shrinker to work adequately with AGP >= 8.
- Android: Updated AGP to 7.4.2, TargetSDK to 33 and Kotlin to 1.8.22.
- ScanbotBarcodeCameraView:
- Android: Replaced the native component
ScanbotCameraViewwith the new and improvedScanbotCameraScannerView.
- Android: Replaced the native component
Version 4.2.0 (18 April 2024):β
- π New:
- Added new supported Barcode types:
CODE_25,IATA_2_OF_5,INDUSTRIAL_2_OF_5,MICRO_QR_CODE,USPS_INTELLIGENT_MAIL,ROYAL_MAIL,JAPAN_POST,ROYAL_TNT_POST,AUSTRALIA_POST,DATABAR_LIMITEDandGS1_COMPOSITE. - Introduced Barcode Document Formats! When scanning barcodes, if a supported document is recognized, it will be parsed and included in the result.
- New functionality to extract images from PDF files! See the new API functions extractImagesFromPDF.
- Added a type literal,
BACK_WIDESTforCameraModule(iOS only). - Added encryption for image files. For more details please check out the section Storage Encryption.
- Added new configuration properties for Barcode Scanner RTU-UI Screen:
flashButtonTitlebarcodeValueFiltertouchToFocusEnabledconfirmationDialogConfiguration
- Added new configuration properties for Batch Barcodes Scanner RTU-UI Screen:
flashButtonTitlebarcodeValueFiltertouchToFocusEnabledautoCancelTimeout
- iOS: Added Privacy manifest file (PrivacyInfo.xcprivacy) to the SDK.
- Added new supported Barcode types:
- π Improvements:
- Improved general speed and accuracy when detecting barcodes.
- Added more control over how to handle GS1 messages in barcodes. See
gs1HandlingModein barcode scanner configuration. - Overall improvements for the Barcode Camera View component.
- π Bug fixes:
- Fixed potential memory leaks in all RTU-UI screens.
- iOS: Fixed a bug where the finder text hint was still showing when
viewFinderEnabledwas disabled for RTU-UI screens. - iOS: Fixed a wrong polygon color in RTU-UI barcode scanner tracking overlay.
- Android: Fixed
minimum1DBarcodesQuietZoneproperty forScanbotBarcodeCameraViewConfigurationclassical component.
- β οΈ Breaking changes:
- Renamed
InitializationOptionstype toScanbotBarcodeSdkConfigurationand added new properties:fileEncryptionModefileEncryptionPassword
- Renamed
FinderAspectRatiotype toAspectRatio. - Renamed
BarcodeOverlayFormattype toBarcodeOverlayTextFormat. - Renamed
BarcodeResulttype toBarcodeScannerResultand removedimageFileUrifrom the main result. - Replaced
barcodeFilterproperty in barcode scanner configurations withbarcodesExtensionFilter. - Replaced
allowedInterfaceOrientationsproperty in barcode scanner configurations withorientationLockMode. - Replaced
overlayTextFormatproperty in selection overlay configuration withtextFormat. - Replaced
gs1DecodingEnabledproperty withgs1HandlingMode. GS1 codes are now handled differently for various barcode types. Using the default optionPARSEwill give the same result as before for all barcode types, except of RSS_EXPANDED. Previously, for RSS_EXPANDED, the result was inconsistently returned with parentheses. Now, to get results with parentheses for all barcode types, choose the optionDECODE. - Removed
barcodeImageGenerationTypeproperty in barcode scanner configurations. - Type literals for
MSIPlesseyChecksumAlgorithmhave been modified. - Results from all API calls are modified. You will receive
ResultWrapperthat containsstatusproperty anddataoptional generic property.
- Renamed
- π Under the hood:
- Upgraded native Scanbot Android Barcode Scanner SDK to v4.2.0
- Upgraded native Scanbot iOS Barcode Scanner SDK to v4.2.2
- Android: Updated version of Nameof C++ library to v0.10.3
- Android: Disabled GPU acceleration for Redmi 9 models, Samsung Galaxy Grand Prime and devices with Android older than 6.
Version 4.0.4 (23 Jan 2024)β
- π New:
- Added
scanningEnabledproperty in theScanbotBarcodeCameraViewnative component configuration. When disabled, no barcodes will be detected, but the camera preview will still be active. Default is enabled.
- Added
- π Bug fixes:
- Fixed
finderInsetproperty in theScanbotBarcodeCameraViewnative component configuration. For Android so far pixels were used, now these values are representing dip. - Android: Fixed
finderAspectRatioproperty in theScanbotBarcodeCameraViewnative component configuration
- Fixed
Version 4.0.3 (15 Dec 2023)β
- π Improvements:
- The plugin is now compatible with React Native v0.73
- π Bug fixes:
- iOS: Fixed native component issue when new architecture is enabled
Version 4.0.2 (27 Oct 2023)β
- π Bug fixes:
- Android: Fixed crash that occurred when the app was killed in the background while the scanner screen was open.
Version 4.0.1 (9 Oct 2023)β
- π New:
- Added
licenseExpirationDateto the SDK functiongetLicenseInforesult.
- Added
- π Improvements:
- The SDK function
getLicenseInfocan now also be called even when the SDK initialization has failed. - Significantly improved memory usage.
- The SDK function
- π Bug fixes:
- Fixed various memory leaks on iOS.
Version 4.0.0 (5 Oct 2023)β
- π New:
- Introduced support for React Native New Architecture! The classic component
ScanbotBarcodeCameraViewis available as a Fabric Component when enabling the new architecture. Backward compatibility is still granted.
- Introduced support for React Native New Architecture! The classic component
- π Improvements:
- Android: CameraX is now used by default for Ready-To-Use UI Components. You can disable it by setting
useCameraXtofalsewhen initializing the SDK. - Improved the speed of barcode recognition for most barcode symbologies.
- Fixed false positives for Code 39 and Codabar barcodes.
- Fixed potential memory leak in all RTU-UI screens.
- Android: CameraX is now used by default for Ready-To-Use UI Components. You can disable it by setting
- β οΈ Breaking changes:
- IMPORTANT: Increased required minimum version of React Native to 0.68
- π Bug fixes:
- iOS: Fixed a focusing issue with the new iPhone 15 Pro and 15 Pro Max.
- π Under the hood:
Version 3.7.0 (29 Aug 2023)β
- π New:
- Added support for the barcode type
MICRO_QR_CODE. - Added new properties to
BarcodeScannerConfigurationandBatchBarcodeScannerConfiguration:viewFinderEnabledcameraZoomRangeenableCameraButtonTitleenableCameraExplanationTextinitialScanDelaycameraPreviewModeminFocusDistanceLockfocusLockPositionfocusLockEnableddoubleTapToZoomEnabledpinchToZoomEnabledshouldAnimateZooming
- Added
autoCancelTimeoutanddelayAfterScantoBarcodeScannerConfiguration.
- Added support for the barcode type
- π Improvements:
- Improved per-frame accuracy for QR code detection.
- β οΈ Breaking Changes:
- iOS: Removed support for iOS 11.x and 12.x. The minimum deployment target to use ScanbotSDK in your app is iOS 13.0!
- π Bug fixes:
- iOS: Fixed a bug where
automaticSelectionEnabledwas not working properly inBatchBarcodeScannerConfiguration.
- iOS: Fixed a bug where
- π Under the hood:
- Updated the native Android Scanbot Barcode Scanner SDK to 3.7.0.
- Updated the native iOS Scanbot Barcode Scanner SDK to 3.7.0.
- Updated some third-party libraries.
Version 3.6.0 (30 May 2023)β
- π New:
- Added support for the barcode type
CODE_25, which is a variant of the Industrial-2of5 type without the checksum.
- Added support for the barcode type
- π Improvements:
- Improved barcode scanning with new ML models.
- Substantial improvements to stacked RSS barcode scanning.
- β οΈ Breaking Changes:
- Removed
decodeStacks1Dproperty fromBarcodeAdditionalParameters. The barcode scanner now handles this automatically.
- Removed
- π Under the hood:
- Updated the native Android Scanbot Barcode Scanner SDK to 3.6.0.
- Updated the native iOS Scanbot Barcode Scanner SDK to 3.6.0.
- Updated some third-party libraries.
Version 3.5.0 (28 Mar 2023)β
- π New:
- Added
decodeStacks1Dproperty inBarcodeAdditionalParameterswhich is available in all Ready to use UI and classical components. - Added
automaticSelectionEnabledproperty inSelectionOverlayConfiguration.
- Added
- π Improvements:
- The
overlayTextFormatproperty inSelectionOverlayConfigurationnow supports all formats. Please checkBarcodeOverlayFormatenum.
- The
- π Bug fixes:
- Android: Fixed the
codeDensityproperty in the classical component. - Android: Fixed the
flashEnabledproperty in the classical component.
- Android: Fixed the
- π Under the hood:
- Updated the native Android Scanbot Barcode Scanner SDK to 3.5.0.
- Updated the native iOS Scanbot Barcode Scanner SDK to 3.5.0.
- Updated some third-party libraries.
Version 3.3.1 (8 Feb 2023)β
- π Bug fixes:
- Fixed build errors for RN 0.70+ caused by usage of deprecated dimensions listener
- Fixed wrong default values for finder inset in
BarcodeCameraView BarcodeCameraView: fixed barcode detection not working after navigating back from a different page on Android
- π Improvements:
- Android: Improved the performance of the Barcode Camera View
- π Under the hood:
- Internal restructure of
BarcodeCameraViewUI - Updated Android SDK to v3.3.1.244-SNAPSHOT
- Internal restructure of
Version 3.3.0 (11 Jan 2023)β
- π New:
- Added barcode formats
IATA2Of5andIndustrial2Of5. - Added
SelectionOverlayConfigurationclass for showing barcode detail overlays while scanning. - Added
overlayConfigurationproperty of typeSelectionOverlayConfigurationinBarcodeScannerConfigurationandBatchBarcodeScannerConfigurationfor configuring the overlay UI. - Added new parameter
finderInsetof typeFinderInsetfor setting the insets to Finder View inScanbotBarcodeCameraViewConfigurationclassical component. - Added Barcode Additional Parameter
codeDensityof typeCodeDensityin all barcode detection categories.
- Added barcode formats
- β οΈ Breaking changes:
- Removed
finderMininmumPaddingandfinderVerticalOffsetfromScanbotBarcodeCameraViewConfiguration. UsefinderInsetproperty instead. - Removed orientation enums
LANDSCAPE_LEFT,LANDSCAPE_RIGHT,PORTRAIT_UPSIDE_DOWNandALL_BUT_UPSIDE_DOWN. Please useALL,PORTRAITorLANDSCAPEinstead.
- Removed
- π Under the hood:
- Updated the native Android Scanbot Barcode Scanner SDK to 3.3.1.
- Updated the native iOS Scanbot Barcode Scanner SDK to 3.3.0.
- Updated some third-party libraries.
Version 3.2.1 (13 Sep 2022):β
- π New:
- Barcode Camera View Component new implementation!
- Android: Using CameraX under the hood; replaced old fragment based implementation: now the component is much more stable and also compatible with the majority of React Views
- iOS: UI and performance minor improvements
- Added
rawBytesattribute to barcode results: it contains the unparsed raw data detected in the scanned image, as an array of bytes. - Added
textWithExtensionattribute to barcode result: if the detected barcode has an extension, it contains both the text and the extension, otherwise it contains the text only. - Added barcode filters in all components! See configuration parameter
barcodeFilters. NOTE: while using barcodeFilters, please leavebarcodeImageGenerationTypeto its default value (NONE) - Added parameters
lowPowerMode,gs1DecodingEnabledandmsiPlesseyChecksumAlgorithmtodetectBarcodesOnImage
- Barcode Camera View Component new implementation!
- π Bug fixes:
- Fixed bug for which some additionalParameters in barcode detection were ignored
- β οΈ Breaking Changes:
- BarcodeResult
barcodesattribute is now non-nullable; an empty array will now be returned whenever no barcodes can be detected - TypeScript type
ScanbotBarcodeCameraViewResulthas been removed; useBarcodeResultinstead
- BarcodeResult
Version 3.2.0 (21 Jun 2022):β
- π New:
- Added new parameter
replaceCancelButtonWithIconinBarcodeScannerConfigurationandBatchBarcodeScannerConfigurationwhich allows replacing the Cancel button with a back arrow (Android only). - Added new type
GS1in BarcodeDocumentFormat enum.
- Added new parameter
- π Improvements:
- Huge improvement on the speed and accuracy of 1D barcodes recognition.
- Native libraries size decreased by more than 20%
- iOS: Improved barcode image cropping.
- π Bug fixes:
- iOS: Fixed scanning issue for Barcode types
RSS_14andRSS_EXPANDED.
- iOS: Fixed scanning issue for Barcode types
- π Under the hood:
Version 3.1.0 (9 Feb 2022)β
- π New:
- Added the ability for Scanbot SDK Core native logging! See
enableNativeLogginginScanbotBarcodeSDKConfiguration(Android only). - Added
allowXnnpackAccelerationinScanbotBarcodeSDKConfigurationwhich allows controlling whether the XNN pack optimizations should be used (Android only). - Added
lowPowerModeinScanbotBarcodeSDKConfigurationandBatchBarcodeScannerConfiguration(Android only). - Added
cameraModuleinScanbotBarcodeSDKConfigurationandBatchBarcodeScannerConfiguration.
- Added the ability for Scanbot SDK Core native logging! See
- π 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.
- π Under the hood
- Upgraded the native Scanbot Android SDK to v3.1.0.
- Upgraded the native Scanbot iOS SDK to v3.1.1.
- Updated some third party libraries.
Version 3.0.1 (19 Nov 2021)β
- π New:
- Introduced
BarcodeCameraViewnative component! From now on you can use it to embed our camera view directly into your react layouts! - Introduced force close functionality in RTU-UI components! You can use it to programmatically close the components.
- Additional parameter
stripCheckDigitsin Barcode Scanner RTU-UI, Batch-Barcode Scanner RTU-UI and BarcodeCameraView - Added support for zooming in Batch Barcode Scanner RTU-UI.
- Android: You can enable CameraX under the hood on Android. See
useCameraXinInitializationOptions - Android: GPU Acceleration will be used for Barcode Scanner RTU-UI and Batch Barcode Scanner RTU-UI. You can disable it by setting
allowGpuAccelerationto false; seeInitializationOptions
- Introduced
- π Improvements:
acceptedDocumentFormatsnow works on iOS for Batch Barcode Scanner- Improved recognition of UPC/EAN barcodes due to ink spread
- Significant performance improvements of the scanner
- All-zeros MSI Plessey barcodes are ignored now
- Android: Improved internal architecture of all RTU screens
- π Bug fixes:
- Fixed some rare crashes
- Android: Fixed
msiPlesseyChecksumAlgorithm,stripCheckDigitsandcameraZoomFactorparameters being ignored inBatchBarcodeScannerConfiguration - Android: Fixed a bug for which RTU-UI does not detect any barcodes with the image generation type
VIDEO_FRAME
- π Under the hood:
- Updated the native Android Scanbot Barcode Scanner SDK to 3.0.6
- Updated the native iOS Scanbot Barcode Scanner SDK to 3.0.3
Version 3.0.0 (16 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
engineModeproperty on barcode scanning APIs to switch between the legacy barcode engine and the new Next Generation barcode engine. By default, the new engine is used. - Re-introduced
MSI Plesseybarcode recognition (disabled by default)
- π Under the hood:
- Updated the native Android Scanbot Barcode Scanner SDK to 3.0.1
- Updated the native iOS Scanbot Barcode Scanner SDK to 3.0.0
Version 1.1.1 (1 July 2021):β
- π Improvements:
- Changes to .podspec to support react-native 0.63+'s new dependency management system
- All configuration and result imports are now available from package root
Version 1.1.0 (4 May 2021):β
-
π New:
- Typescript Type Declarations for ScanbotBarcodeSDK functions, configurations and results!
- Introduced Batch Barcode Scanner RTU-UI component, for multiple barcodes scanning.
- Added support for zooming in Barcode Scanner; see the property
cameraZoomFactorinstartBarcodeScanner. - Added support for Swiss QR codes
- Document Type filters for Barcode Scanner.
-
π Improvements:
- Significantly improved barcode scanning & detection.
- Various RTU-UI improvements.
- Introduced
minimumTextLength,maximumTextLength,minimum1DBarcodesQuietZonefor ITF Barcodes, andenableGS1Decodingfor CODE-128 Barcodes. - Android: memory consumption optimization.
-
β οΈ Breaking Changes:
- IMPORTANT: Removed support for iOS 9 and iOS 10
- Renamed
imageUritoimageFileUriinstartBarcodeScanneranddetectBarcodesOnImageresult - Removed
storeImagesfromstartBarcodeScanner. UsebarcodeImageGenerationTypeinstead. - Renamed
uritoimageFileUriindetectBarcodesOnImagearguments. - Removed
bottomButtonsInactiveColorandbottomButtonsActiveColorfromBarcodeScannerConfiguration. - Removed
storeImagesfromdetectBarcodesOnImage, theimageFileUriis now returned by default, when available. - Removed
finderWidthandfinderHeight! Please, usefinderAspectRatioinstead.
-
π Bug fixes:
- Many bug fixes and improvements
- iOS: Fixed an issue with uploading apps containing the Scanbot Barcode SDK (related Apple error codes ITMS-90166, ITMS-90535 and ITMS-90171).
-
π Under the hood:
- Updated Android Scanbot Barcode SDK to version 1.7.0
- Updated iOS Scanbot Barcode SDK to version 1.11.0
Version 1.0.0 (18 Mar 2020):β
- π First release.
Want to scan longer than one minute?
Generate a free trial license to test the Scanbot SDK thoroughly.
Get free trial licenseScanbot SDK is part of the Apryse SDK product family
A mobile scan is just the start. With Apryse SDKs, you can expand mobile workflows into full crossβplatform document processing. Whether you need to edit PDFs, add secure digital signatures, or use a fast, customizable document viewer and editor, Apryse gives you the tools to build powerful features quickly.
Learn more
