Skip to main content

Getting started | Xamarin Barcode Scanner

Download & Installation#

The Scanbot Barcode Scanner SDK for Xamarin is provided as 2 NuGet packages:

Install ScanbotBarcodeSDK.Xamarin.Forms if your project is based on Xamarin.Forms, otherwise install ScanbotBarcodeSDK.Xamarin.

You can install them directly via Visual Studio IDE: Open your App-Solution in Visual Studio, select your iOS or Android project and click on the menu item Project -> Add NuGet Packages.
Make sure nuget.org is selected as the source and search for the package.

By clicking on Add Package the Scanbot Barcode Scanner SDK will be downloaded and installed into your project. Do that for both your iOS and Android projects. Also, ScanbotBarcodeSDK.Xamarin.Forms must be installed in the portable app project (if one exists - not necessary if you are using a shared project).

Force registration of native dependencies. Add the following lines to your MainActivity and AppDelegate, respectively:

ScanbotBarcodeSDK.Forms.Droid.DependencyManager.Register();
ScanbotBarcodeSDK.Forms.iOS.DependencyManager.Register();

Android Settings#

Enable Multi-Dex

Android Project => Options => Android Build => General => Enable Multi-Dex

alt

ABI Settings

The Scanbot Barcode Scanner SDK uses native libraries under the hood and supports the following ABIs: armeabi-v7a, arm64-v8a, x86 and x86_64.

Please adjust the Supported ABIs configuration in your Android project settings accordingly:

Android Project => Options => Android Build => Advanced => Supported ABIs ...

alt

Please note: In most cases the architectures x86 and x86_64 can be removed for the release (production) build, since they are only used on emulators and on some rare devices with the Intel Atom architecture.

Furthermore, please increase the Java Heap Size value to 4G. This is required for the build process.

ProGuard

If you need to enable ProGuard for your Android release build, please check this full list of the ProGuard rules for the Scanbot SDK.

iOS settings#

Set Linker Behaviour to Link SDK assemblies only

alt

Permissions#

Required permissions for Android

Make sure to add the Camera permission in your AndroidManifest.xml file:

<uses-permission android:name="android.permission.CAMERA" /><uses-feature android:name="android.hardware.camera" />

Required permissions for iOS

Add the following properties to your Info.plist file:

  • "Privacy - Camera Usage Description" (NSCameraUsageDescription). Describe why your app wants to access the device's camera.