FAQ
License Questions
How can I get a trial license for the Scanbot SDK?
Generate a 7-day trial license for your project.
Can I extend my trial license?
For a 30-day PoC license, please get in touch with our Sales Team (sdk@scanbot.io)
How do I best store the license key?
We recommend a few options when it comes to license storing:
- Store within the App: Since the SDK operates fully offline, the license key is typically stored within the app. To change the license key, you must release an app update.
- Server-Based License Management (Optional): For greater flexibility, you can host the license key on your server and implement periodic license key requests by the app. This allows you to update the license key on the server without requiring frequent app updates.
- Multi-Year Contracts: To minimize the frequency of license changes, we offer multi-year contracts, reducing the need for regular updates of the license key within the app.
Why does the scanning not work / the scanning screen close automatically?
Such an issue could be due to different factors. First, ensure that the license key is correctly configured. Please verify that the application ID or bundle ID matches the license key. If you're using a trial license key, adjust the application/bundle ID accordingly and make sure to enter the license key string exactly as provided, including any line breaks and the final characters.
If the issue persists, please contact the Customer Support Team for assistance. Additionally, for more detailed guidance on integrating the trial license key, refer to the SDK Initialization page, which offers step-by-step instructions specific to your development environment.
The examples you can find in our API References run in a 1-minute trial mode without a license key. After the trial, the SDK functions stop working, and some UI components may terminate. Restart the app for another trial period or reach out to our Sales Team for a 30 day PoC license.
Image Questions
Do I need high DPI values?
DPI values are dependent on your back-end system, usually they are not needed. However, if your system requires a DPI value for accurate image processing that can be done with our SDK. Please note that starting from Version 5.0.0, you can set the desired DPI value for every image captured with the Scanbot SDK if exported as a PDF or .TIFF file.
How to avoid blurry images?
To avoid blurry images, there are several steps you can take. First, activate the automatic capture feature, which optimizes the capturing process and helps reduce blurriness. After scanning, use the Document Quality Analyzer (DQA) to assess the document's legibility. The DQA assigns a quality score from "Very poor" to "Excellent." We recommend ensuring the scan has a quality rating of at least "Reasonable". If the quality is lower, it is advisable to retake the scan to ensure clarity.
How does Scanbot SDK ensure the highest possible scanning quality?
The Scanbot SDK ensures the highest possible scanning quality through a suite of advanced features designed to deliver results. Some of which are automatic detection, rotation, and cropping, user guidance, as well as quality-enhancing filters
General Questions
What is a Barcode Scanner SDK?
A Barcode Scanner SDK transforms any existing app or website on a smartphone, tablet, or server into a reliable and easy-to-use barcode scanner. It utilizes machine learning and computer vision technology to deliver fast and accurate scanning results and offers advanced features like batch scanning and an Augmented Reality (AR) overlay.
Which types of barcodes can I scan?
Scanbot SDK supports all common Barcode, QR Code, and Data Matrix Code formats. Find a full list of supported codes here.
What is a Document Scanner SDK?
It enables users of your app or website to easily digitize physical documents, enhance image quality, and extract text data for further processing while offering advanced features such as automatic edge detection, perspective correction, and text recognition (OCR). Leveraging machine learning and computer vision technology, it delivers fast and precise scanning results.
What kind of data can be captured with Scanbot SDK?
Using the data capture SDK in your existing app or website, you can extract information from documents, such as medical certificates, EHIC cards, international ID documents, driver’s licenses, checks, and Machine Readable Zones (MRZ). Additionally, single-line data can be extracted from any document.
How many Megabytes are added per SDK and can the size be reduced?
The size added by each SDK can vary, typically ranging from a few to several megabytes, depending on its functionality and dependencies. While there isn't a fixed amount, you can often reduce the overall size by removing unused features, optimizing resources, and using more efficient configurations.
How to reduce Android .apk
and iOS .ipa
size?
During development, the SDK may include features that are not always used by clients, which can increase the app size temporarily. However, unused code might be removed before the app is published to app stores, though this process can vary depending on the platform. For example on Android, applying ProGuard rules can help significantly reduce the .apk size. ProGuard obfuscates, shrinks, and optimizes the code by removing unused classes and methods, renaming classes and variables, and performing other optimizations that result in a leaner application. This process not only minimizes the final app size but also enhances security by making the code harder to reverse-engineer.
How can I integrate the Barcode Scanner SDK in Cordova?
Check out our blog post for a detailed tutorial on integrating the Barcode Scanner in Cordova.
How can I integrate the Barcode Scanner SDK in React Native?
Check out our blog post for a detailed tutorial on integrating the Barcode Scanner in React Native.
How can I integrate the Document Scanner SDK in Capacitor?
Check out our blog post for a detailed tutorial on integrating the Document Scanner in Capacitor?
Is the Scanbot SDK compliant with international data privacy law?
Yes, the SDK works in compliance with strict standards such as the GDPR, CCPA, and many more. All processing happens exclusively on the end-user’s device. It does not track any data or connect to third party servers.
iOS
NSException Could not load NIB in bundle: NSBundle
Set the storyboard transition segue to a view with SBSDKScannerViewController as the controller class.
If the above doesn't work:
Xcode 12.3 has a new workspace validation step enabled by default. This validation runs before our architect-stripping script, causing a premature error. To fix, go to your app target's build settings, set Validate Workspace to YES, then NO. This adds VALIDATE_WORKSPACE = NO;
to your project file.
Android
Does your Android SDK support Huawei's HarmonyOS?
Yes, Scanbot SDK can be integrated into a HarmonyOS app.
SDK increases app size significantly
Check ABI Settings – see docs. Each ABI contains native lib files, increasing APK size. Support "arm64-v8a" and "armeabi-v7a" in any case, "x86" and "x86_64" depend on your use case. Remove from release/production build if not needed. Use Gradle to control this. Consider "Android App Bundle" approach for optimization. "arm64-v8a" is most common. "armeabi-v7a" is deprecated. "x86" and "x86_64" are mainly for emulators and some rare devices.
I'm getting the error: android.view.InflateException: Binary XML file line #8: Error inflating class io.scanbot.sdk.ui.camera.ScanbotCameraXView
Ensure the Scanbot SDK is initialized before using any UI components like ScanbotCameraView.
I'm getting the error Java.Lang.UnsatisfiedLinkError
Adjust the Android ABI settings, clean and rebuild the project, and reinstall the app.
I am getting the error: No version of NDK matched the requested version XX.X.XXXXXXX
Android Studio, open "Preferences" > "Android SDK" > "SDK Tools". Activate "Show Package Details", select the desired NDK version, and install it.
Web
Is there a configuration to turn on the torch function (flashlight) for mobile cameras?
On Android devices, only Chrome supports torch control. Starting with iOS 17.4, all supported browsers on iOS offer torch control functionality. Check the documentation for details here.
What Aspect Ratio for the barcode view-finder is ideal?
For barcode scanning, the recommended Aspect Ratio is either 2:1 or 3:1.
Is there a setting to control exposure in the API?
While there is an option for exposure control and other advanced camera settings, please note that these features are unstable. Their performance can vary significantly depending on the device and browser being used.
How can I address focus issues on iPhone 14, 14 Pro Max, 15, and 15 Plus?
This occurs because these models have a bigger minimal focus distance. That's most likely because of the increased size of the camera sensor combined with the new optical formula. Default to the wide-angle camera using:
IBarcodeScannerHandle.switchCamera("Back Ultra Wide Camera");
What do you think of this documentation?
What can we do to improve it? Please be as detailed as you like.