Skip to main content

Building production apps with the React Native Barcode Scanner SDK

iOS​

The Scanbot SDK iOS framework included in the Scanbot SDK for React Native is available through CocoaPods or Swift Package Manager. It is distributed as an XCFramework that supports all required iOS device architectures. Manual architecture exclusion or filtering is not necessary. React Native applications are ultimately built and distributed as native iOS applications. Submit your app to the App Store using the same process as for any other native iOS 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.

If you use an App Bundle, which is the preferred way to distribute your app, you don’t need API filters. It allows you to create and distribute dedicated and smaller APKs via the PlayStore.

If you use an APK, you can reduce its size by filtering out unused architectures. To exclude specific ABIs, use the abiFilters property in your project's Android Gradle settings.

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"
}
}
}

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.barcodesdk.plugin.reactnative.**
-keep public class io.scanbot.barcodesdk.plugin.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

On this page