Deprecation warning

Please note that this is outdated documentation for an older release of the Scandit Barcode Scanner SDK.

We are deprecating the 5.x API on all platforms (except Linux). Release 5.19 in April 2021 will be our final. Applications running 5.x will continue to work, and we will continue to release critical bug fixes and security patches only, for one year. We encourage you to migrate to 6.x and take advantage of our latest / advanced features and improved performance.

You'll find the updated documentation at: Data Capture SDK Documentation for iOS

Configure/Optimize the Barcode Decoder for your Use Case

Accelerate the Camera Start

To reduce the slight delay when starting the camera under iOS, the Scandit Barcode Picker SDK keeps the barcode picker in a standby state once a barcode is successfully scanned. To accelerate the initial start of the camera, we recommend that developers call prepareWithAppKey: (ScanditSDKBarcodePicker) prior to the start of the barcode scanner, e.g. in didApplicationFinishLaunching.

[ScanditSDKBarcodePicker prepareWithAppKey:self.appKey
cameraFacingPreference:CAMERA_FACING_BACK];

There is also a method to disable the standby state to save battery life and memory when the barcode scanner is infrequently used within your application (see disableStandbyState (ScanditSDKBarcodePicker)).


Select Camera Direction

The Scandit Barcode Scanner SDK supports both front and back-facing cameras. The camera direction can be specified when instantiating the ScanditSDKBarcodePicker or while the picker is running (see ScanditSDKBarcodePicker for more details).

ScanditSDKBarcodePicker::cameraFacingDirection
supportsCameraFacing: (SBSBarcodePickerBase)
changeToCameraFacing: (SBSBarcodePickerBase)
switchCameraFacing (SBSBarcodePickerBase)


Disable Barcode Symbologies Not Supported By Your App

To optimize the barcode decoding performance, we recommend that you disable the barcode symbologies that are not supported by your application. The ScanditSDKBarcodePicker has methods to enable/disable each symbology supported by the Scandit Barcode Scanner SDK.

setEan13AndUpc12Enabled: (ScanditSDKBarcodePicker)
setEan8Enabled: (ScanditSDKBarcodePicker)
setUpceEnabled: (ScanditSDKBarcodePicker)
setCode39Enabled: (ScanditSDKBarcodePicker)
setCode128Enabled: (ScanditSDKBarcodePicker)
setItfEnabled: (ScanditSDKBarcodePicker)
setMsiPlesseyEnabled: (ScanditSDKBarcodePicker)
setGS1DataBarEnabled: (ScanditSDKBarcodePicker)
setGS1DataBarExpandedEnabled: (ScanditSDKBarcodePicker)
setQrEnabled: (ScanditSDKBarcodePicker)
setDataMatrixEnabled: (ScanditSDKBarcodePicker)
setPdf417Enabled: (ScanditSDKBarcodePicker)


Disable the full image barcode detection for multi-barcode scenarios

The Scandit Barcode Scanner SDK searches by default for barcodes in the camera image. If you have an application where multiple barcodes will be present in the camera simultaneously, we recommend that you disable the full image detection and possibly also reduce the area in which barcodes are detected.

// restrict active scanning area
[self.scanditSDKBarcodePicker restrictActiveScanningArea:YES];
// reduce active area to 10% of display height
[self.scanditSDKBarcodePicker setScanningHotSpotHeight:0.1];
// reduce the size of white viewfinder rectangle (this only affects the size of rectangle - not the active scanning area
[self.scanditSDKBarcodePicker.overlayController setViewfinderHeight:0.1
width:0.6
landscapeHeight:0.1
landscapeWidth:0.6];


Set Checksum Used In Your Application

Some barcode symbologies support different checksum formats. The MSI Plessey decoder of the Scandit Barcode Scanner SDK has different checksums formats that need to be selected for the particular application.

[self.scanditSDKBarcodePicker setMsiPlesseyChecksumType:checksumType];