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 Xamarin.Android and Data Capture SDK Documentation for Xamarin.iOS

Troubleshoot

The callback functions are sometimes not called

There was a change in how the bindings for weakly referenced delegates work around iOS 9 that can cause this problem if the device is low on memory. To avoid the problem you need to make sure that you have a reference to the delegate as long as the picker is used. For this simply create a class variable of your delegate:

public partial class ScanditSDKDemoViewController : UIViewController {
private SIBarcodePicker picker;
private PickerScanDelegate scanDelegate;

Assign the delegate to this class variable first and then also to the overlay controller's delegate variable:

scanDelegate = new PickerScanDelegate(this);
picker.ScanDelegate = scanDelegate;