Building production apps with the React Native Data Capture Modules
iOS
The Scanbot SDK iOS Framework (included in the React Native SDK) is provided as a Pod via https://cocoapods.org.
Because React Native apps are normal native apps at the end of the day, the way they are deployed to the App Store is just like any other native app.
Please consult the official Apple documentation on submitting apps to the App Store for more information.
Android
The Scanbot React Native SDK uses native libraries under the hood and supports the following ABIs: armeabi-v7a, arm64-v8a, x86, and x86_64.
To exclude certain ABIs, use the abiFilters property in the Android Gradle settings of your project.
Please check and adjust the abiFilters configuration in your build.gradle file accordingly:
android {
...
defaultConfig {
...
ndk {
// a typical production configuration:
abiFilters "armeabi-v7a", "arm64-v8a"
}
}
}
If you need to support all architectures and to optimize the APK size, we highly recommend checking out the Android App Bundle approach.
It allows you to create and distribute dedicated and smaller APKs via the Google Play Store (similar to the iOS App Store approach).
Proguard
Starting from v4.2.0, consumer ProGuard rules are integrated into the Scanbot React Native SDK and automatically applied to customers' modules.
If you use an older version and have ProGuard/R8 enabled for the release/production build, please add the following rules:
-keeppackagenames io.scanbot.sdk.reactnative.**
-keep public class io.scanbot.sdk.reactnative.** { *; }
-keep public class io.scanbot.sdk.ui.** { *; }
Want to scan longer than one minute?
Generate a free trial license to test the Scanbot SDK thoroughly.
Get free trial license