Changelog | React Native Barcode Scanner
tip
For additional details about the API, please refer to our API reference documentation.
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_DISTANCE
andNEXT_GEN_LOW_POWER_FAR_DISTANCE
.NEXT_GEN_FAR_DISTANCE
is optimized for scanning from far distances.NEXT_GEN_LOW_POWER_FAR_DISTANCE
is 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
strictMode
for 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 supportstrictMode
forQR_CODE
,MICRO_QR_CODE
,RMQR_CODE
,PDF_417
,MICRO_PDF417
andGS1_COMPOSITE
. - Android: Added an option to the RTU-UI Barcode Scanner screen for keeping the screen on.
- ScanbotBarcodeCameraView: Added property
hardwareButtonsEnabled
which 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_5
andCODE_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_39
barcode 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_CODE
barcode format with wrong bits in numeric mode. - Android: Fixed
minimumTextLength
forITF
barcode 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.addAdditionalQuietZone
is enabled. - Android: In RTU-UI v2, the modal dialog no longer appears below the status bar.
- Android:
FindAndPickScanningMode.sheetContent.barcodeItemImageVisible
in 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-sdk
path. - Removed RTU-UI v1
startBarcodeScanner
,closeBarcodeScanner
,startBatchBarcodeScanner
andcloseBatchBarcodeScanner
deprecated APIs along with all related types. ResultWrapper
has been removed from all API responses, except those returned by RTU-UI.startBarcodeScanner
API is part ofScanbotBarcodeSDK
object. The input configuration and result objects were changed. See more here: ScanbotBarcodeSDK.startBarcodeScanner.initializeSdk
API now returns a result of typeLicenceInfoResult
instead of a status.- The input parameters and result objects for
detectBarcodesOnImage
API were changed. See more here: ScanbotBarcodeSDK.detectBarcodesOnImage. - Type literals for
BarcodesExtensionFilter
,BarcodeScannerEngineMode
andFieldValidationStatus
have been modified. - Renamed type
BarcodeScannerConfiguration
toBarcodeScannerScreenConfiguration
. - Renamed types
BarcodeMappedData.barcodeImageKey
toBarcodeMappedData.BARCODE_IMAGE_KEY
andExpectedBarcode.barcodeImageKey
toExpectedBarcode.BARCODE_IMAGE_KEY
. - Renamed types
MSIPlesseyChecksumAlgorithm
toMsiPlesseyChecksumAlgorithm
,EngineMode
toBarcodeScannerEngineMode
,Gs1HandlingMode
toGs1Handling
andValidationStatus
toFieldValidationStatus
. - Replaced type
BarcodeType
withBarcodeFormat
. - Replaced property
recognizerConfiguration
of typeBarcodeRecognizerConfiguration
withscannerConfiguration
of typeCommonBarcodeScannerConfiguration
. - ScanbotBarcodeCameraView:
detectorConfig
was replaced withbarcodeScannerConfiguration
. See more here: ScanbotBarcodeCameraViewProperties.barcodeScannerConfiguration.- The parameter for the
onBarcodeScannerResult
callback is now of typeBarcodeItem[]
. - The parameter for the
barcodeItemOverlayViewBinder
callback 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
refreshRate
property toBarcodeItemOverlayViewConfig
.
- Added a new
- 🐞 Bug fixes:
- Android: When the
barcodeItemOverlayViewBinder
callback is set, thetextFormat
property in theselectionOverlayConfig
for the Classic UI is considered.
- Android: When the
Version 6.2.0 (10 Feb 2025):
- 🎉 New:
- Added a new callback
barcodeItemOverlayViewBinder
as a part ofSelectionOverlayConfig
inScanbotBarcodeCameraView
, that configures the selection overlay for each barcode item individually.
- Added a new callback
- 🚀 Improvements:
- Android: Improved
ScanbotBarcodeCameraView
resolution 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
accessibilityDescription
was not being applied correctly.
- iOS: Fixed a bug in the barcode RTU-UI v2 action bar items where the
- ⚠️ Breaking Changes:
shouldHighlightBarcode
callback is removed fromSelectionOverlayConfig
inScanbotBarcodeCameraView
together with highlighted color properties. Please use the newbarcodeItemOverlayViewBinder
callback 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-plugins
dependency 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
addAdditionalQuietZone
inDetectBarcodesOnImageArguments
. The default value is false. - Added a new property
accessibilityDescription
inRoundButton
andButtonConfiguration
. - Added a new property
allowEmptySubmission
inMultipleScanningMode
to allow submission of an empty barcode list in the Multiple Barcodes use case in RTU-UI v2. - Added new optional properties
useIATA2OF5Checksum
,useCode11Checksum
andaustraliaPostCustomerFormat
inBarcodeScannerConfiguration
,BatchBarcodeScannerConfiguration
,BarcodeRecognizerConfiguration
andDetectBarcodesOnImageArguments
. - Added the ability to display the scanned barcode's image in the RTU-UI v2 Barcode Scanner
FindAndPickScanningModeUseCase
by specifyingExpectedBarcode.barcodeImageKey
for the expected barcode'simage
property. - Added a new type literal
CONFIRMED
inValidationStatus
type inGenericDocument
. - Added a new type literal
NONE
inCommonFieldType
type used inGenericDocument
. - iOS: Added a new property
displayText
inGenericDocument.Type
andField.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
polygonInRoot
inField
type used inGenericDocument
.
- Added a new API,
- 🚀 Improvements:
- Improved detection of
UPC
andEAN
extensions. - Added support for Extended Channel Interpretation (ECI) for Datamatrix and Aztec barcodes.
- For
CODE_128
andITF
, 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
FindAndPickScanningModeUseCase
that never showed the expected barcodes title, but always the barcode value. - iOS: Fixed a UI issue in the RTU-UI v2 Barcode Scanner
FindAndPickScanningModeUseCase
in 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
SingleScanningModeUseCase
where 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
minZoom
andmaxZoom
inZoomRange
. - 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
codeDensity
fromBarcodeScannerConfiguration
,BatchBarcodeScannerConfiguration
andDetectBarcodesOnImageArguments
. - Removed
DetectBarcodesOnImagesField
,DetectBarcodesOnImageResult
andExtractImagesFromPdfResult
interfaces. - Removed type literals
VALIDATE
andDECODE
and replaced them withVALIDATE_STRUCTURE
,DECODE_STRUCTURE
,VALIDATE_FULL
andDECODE_FULL
inGs1HandlingMode
. - Changed the default values for properties
okButton
,cancelButton
andactionButton
inScanbotAlertDialog
. - Changed the default values for properties
enableCameraButton
andcloseButton
inCameraPermissionScreen
. - Changed the default value for property
visible
inArOverlayFindAndPickConfiguration
to true forFindAndPickScanningMode
. - Replaced
standard
andvalidationStatus
fields withvalidationErrors
in theGS1.Element
class. - Renamed
RootTypeName
toBarcodeDocumentModelRootType
and also renamed the inherited document types. - Android: Changed
barcodesRegexFilter
behavior inBarcodeRecognizerConfiguration
forBarcodeScannerConfiguration
config 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
startBarcodeScanner
fromreact-native-scanbot-barcode-scanner-sdk/ui_v2
to leverage the new UI. See our updated documentation for a full set of examples and use cases. - Added support for the
MICRO_PDF_417
barcode format. - Added support for parsing of AAMVA Certificate of Title for motor vehicle barcodes.
- ScanbotBarcodeCameraView:
- Added new property
cameraZoomRange
which sets the range of valid camera zoom factors. - Added new property
cameraModule
which sets the camera device being used for scanning. - Added new property
minFocusDistanceLock
which locks focus distance within minimum possible range. - Added new methods
freezeCamera
andunfreezeCamera
which control the camera preview. - Added new config
selectionOverlayConfig
which configures the selection overlay. - Android: Added new property
minPadding
which sets initial padding for insets. - iOS:
lowPowerMode
property 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
DetectBarcodesOnImageArguments
were 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:
BarcodesExtensionFilter
now 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_14
toBarcodeFormat.DATABAR
andBarcodeFormat.RSS_EXPANDED
toBarcodeFormat.DATABAR_EXPANDED
. - Renamed
GetLicenseInfoResult
interface 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_25
fromCOMMON_CODES
list. - 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
configuration
prop and subdivided by configurations. - Child views are no longer added natively. There is a dedicated container that holds views.
- Renamed
shouldUseFinderView
toviewFinderEnabled
. - Renamed
finderAspectRatio
torequiredAspectRatio
. - Removed
finderBackgroundColor
andfinderBackgroundOpacity
in favor ofoverlayColor
.overlayColor
acceptsColorValue
through 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
ScanbotCameraView
with 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_LIMITED
andGS1_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_WIDEST
forCameraModule
(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:
flashButtonTitle
barcodeValueFilter
touchToFocusEnabled
confirmationDialogConfiguration
- Added new configuration properties for Batch Barcodes Scanner RTU-UI Screen:
flashButtonTitle
barcodeValueFilter
touchToFocusEnabled
autoCancelTimeout
- 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
gs1HandlingMode
in 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
viewFinderEnabled
was disabled for RTU-UI screens. - iOS: Fixed a wrong polygon color in RTU-UI barcode scanner tracking overlay.
- Android: Fixed
minimum1DBarcodesQuietZone
property forScanbotBarcodeCameraViewConfiguration
classical component.
- ⚠️ Breaking changes:
- Renamed
InitializationOptions
type toScanbotBarcodeSdkConfiguration
and added new properties:fileEncryptionMode
fileEncryptionPassword
- Renamed
FinderAspectRatio
type toAspectRatio
. - Renamed
BarcodeOverlayFormat
type toBarcodeOverlayTextFormat
. - Renamed
BarcodeResult
type toBarcodeScannerResult
and removedimageFileUri
from the main result. - Replaced
barcodeFilter
property in barcode scanner configurations withbarcodesExtensionFilter
. - Replaced
allowedInterfaceOrientations
property in barcode scanner configurations withorientationLockMode
. - Replaced
overlayTextFormat
property in selection overlay configuration withtextFormat
. - Replaced
gs1DecodingEnabled
property withgs1HandlingMode
. GS1 codes are now handled differently for various barcode types. Using the default optionPARSE
will 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
barcodeImageGenerationType
property in barcode scanner configurations. - Type literals for
MSIPlesseyChecksumAlgorithm
have been modified. - Results from all API calls are modified. You will receive
ResultWrapper
that containsstatus
property anddata
optional 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
scanningEnabled
property in theScanbotBarcodeCameraView
native component configuration. When disabled, no barcodes will be detected, but the camera preview will still be active. Default is enabled.
- Added
- 🐞 Bug fixes:
- Fixed
finderInset
property in theScanbotBarcodeCameraView
native component configuration. For Android so far pixels were used, now these values are representing dip. - Android: Fixed
finderAspectRatio
property in theScanbotBarcodeCameraView
native 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
licenseExpirationDate
to the SDK functiongetLicenseInfo
result.
- Added
- 🚀 Improvements:
- The SDK function
getLicenseInfo
can 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
ScanbotBarcodeCameraView
is 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
useCameraX
tofalse
when 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
BarcodeScannerConfiguration
andBatchBarcodeScannerConfiguration
:viewFinderEnabled
cameraZoomRange
enableCameraButtonTitle
enableCameraExplanationText
initialScanDelay
cameraPreviewMode
minFocusDistanceLock
focusLockPosition
focusLockEnabled
doubleTapToZoomEnabled
pinchToZoomEnabled
shouldAnimateZooming
- Added
autoCancelTimeout
anddelayAfterScan
toBarcodeScannerConfiguration
.
- 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
automaticSelectionEnabled
was 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
decodeStacks1D
property 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
decodeStacks1D
property inBarcodeAdditionalParameters
which is available in all Ready to use UI and classical components. - Added
automaticSelectionEnabled
property inSelectionOverlayConfiguration
.
- Added
- 🚀 Improvements:
- The
overlayTextFormat
property inSelectionOverlayConfiguration
now supports all formats. Please checkBarcodeOverlayFormat
enum.
- The
- 🐞 Bug fixes:
- Android: Fixed the
codeDensity
property in the classical component. - Android: Fixed the
flashEnabled
property 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
BarcodeCameraView
UI - Updated Android SDK to v3.3.1.244-SNAPSHOT
- Internal restructure of
Version 3.3.0 (11 Jan 2023)
- 🎉 New:
- Added barcode formats
IATA2Of5
andIndustrial2Of5
. - Added
SelectionOverlayConfiguration
class for showing barcode detail overlays while scanning. - Added
overlayConfiguration
property of typeSelectionOverlayConfiguration
inBarcodeScannerConfiguration
andBatchBarcodeScannerConfiguration
for configuring the overlay UI. - Added new parameter
finderInset
of typeFinderInset
for setting the insets to Finder View inScanbotBarcodeCameraViewConfiguration
classical component. - Added Barcode Additional Parameter
codeDensity
of typeCodeDensity
in all barcode detection categories.
- Added barcode formats
- ⚠️ Breaking changes:
- Removed
finderMininmumPadding
andfinderVerticalOffset
fromScanbotBarcodeCameraViewConfiguration
. UsefinderInset
property instead. - Removed orientation enums
LANDSCAPE_LEFT
,LANDSCAPE_RIGHT
,PORTRAIT_UPSIDE_DOWN
andALL_BUT_UPSIDE_DOWN
. Please useALL
,PORTRAIT
orLANDSCAPE
instead.
- 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
rawBytes
attribute to barcode results: it contains the unparsed raw data detected in the scanned image, as an array of bytes. - Added
textWithExtension
attribute 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 leavebarcodeImageGenerationType
to its default value (NONE) - Added parameters
lowPowerMode
,gs1DecodingEnabled
andmsiPlesseyChecksumAlgorithm
todetectBarcodesOnImage
- Barcode Camera View Component new implementation!
- 🐞 Bug fixes:
- Fixed bug for which some additionalParameters in barcode detection were ignored
- ⚠️ Breaking Changes:
- BarcodeResult
barcodes
attribute is now non-nullable; an empty array will now be returned whenever no barcodes can be detected - TypeScript type
ScanbotBarcodeCameraViewResult
has been removed; useBarcodeResult
instead
- BarcodeResult
Version 3.2.0 (21 Jun 2022):
- 🎉 New:
- Added new parameter
replaceCancelButtonWithIcon
inBarcodeScannerConfiguration
andBatchBarcodeScannerConfiguration
which allows replacing the Cancel button with a back arrow (Android only). - Added new type
GS1
in 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_14
andRSS_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
enableNativeLogging
inScanbotBarcodeSDKConfiguration
(Android only). - Added
allowXnnpackAcceleration
inScanbotBarcodeSDKConfiguration
which allows controlling whether the XNN pack optimizations should be used (Android only). - Added
lowPowerMode
inScanbotBarcodeSDKConfiguration
andBatchBarcodeScannerConfiguration
(Android only). - Added
cameraModule
inScanbotBarcodeSDKConfiguration
andBatchBarcodeScannerConfiguration
.
- 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
BarcodeCameraView
native 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
stripCheckDigits
in 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
useCameraX
inInitializationOptions
- Android: GPU Acceleration will be used for Barcode Scanner RTU-UI and Batch Barcode Scanner RTU-UI. You can disable it by setting
allowGpuAcceleration
to false; seeInitializationOptions
- Introduced
- 🚀 Improvements:
acceptedDocumentFormats
now 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
,stripCheckDigits
andcameraZoomFactor
parameters 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
engineMode
property 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 Plessey
barcode 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
cameraZoomFactor
instartBarcodeScanner
. - 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
,minimum1DBarcodesQuietZone
for ITF Barcodes, andenableGS1Decoding
for CODE-128 Barcodes. - Android: memory consumption optimization.
-
⚠️ Breaking Changes:
- IMPORTANT: Removed support for iOS 9 and iOS 10
- Renamed
imageUri
toimageFileUri
instartBarcodeScanner
anddetectBarcodesOnImage
result - Removed
storeImages
fromstartBarcodeScanner
. UsebarcodeImageGenerationType
instead. - Renamed
uri
toimageFileUri
indetectBarcodesOnImage
arguments. - Removed
bottomButtonsInactiveColor
andbottomButtonsActiveColor
fromBarcodeScannerConfiguration
. - Removed
storeImages
fromdetectBarcodesOnImage
, theimageFileUri
is now returned by default, when available. - Removed
finderWidth
andfinderHeight
! Please, usefinderAspectRatio
instead.
-
🐞 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 your free Trial License