Changelog | React Native Barcode Scanner
tip
For additional details about the API, please refer to our API reference documentation.
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.
- 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 license