Deprecation warning
Please note that this is outdated documentation for an older release of the Scandit Barcode Scanner SDK.
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
Integrate the Scandit Barcode Scanner into your own app by following these steps:
Get the Scandit Barcode Scanner
You get the Scandit Barcode Scanner in the Xamarin Component Store. You can use the components walkthrough by Xamarin to help you with adding the component to your project.
Add the barcode scanner namespace to easily access its classes
If you don't want to type the whole namespace each time when using the scanner you should add a using directive at the top of the class you will use the scanner in:
Set the app key
Sign in to your account at http://account.scandit.com to look up your app key in the Download section.

Set the app key in your AppDelegate's FinishedLaunching method the following way:
Add code to handle the scanning event
Implement the ScanDelegate protocol to handle the successful barcode decoding. The API reference of the ScanDelegate protocol provides more details about what is returned.
Careful: The ScanDelegate method is invoked on a picker-internal queue. To perform any UI work, you must dispatch to the main UI thread.
And then set the scan delegate on the picker.
Careful: Since a change around iOS 9 the delegates are only softly referenced and can be dereferenced and deallocated if the memory is low. To avoid this you should keep a reference to them until you no longer use the picker (for example by creating a class variable for the delegates in the presenting view controller).
If you are displaying the BarcodePicker modally and want to use the scanner's toolbar to cancel and return you will also need to implement the CancelDelegate.
And then set the cancel delegate on the overlay view.
Add code to start the scanning process
The scanning process is started by instantiating BarcodePicker, specifying the delegate that will receive the scan callback event and then starting the scanner.