Follow

Does the Scandit SDK support React Native New Architecture?

Yes, specific versions of the Scandit SDK are compatible with the React Native New Architecture. Starting in 6.28.2 for version 6.x and 7.0.1 for version 7.x, New Architecture is supported by opt-in or default. See the version compatibility table below.

New Architecture React Native Scandit SDK

Default

0.76 >=6.28.2 or >= 7.0.1
Opt-in only 0.68 - 0.75.4 >= 6.16 (No opt-in)
0.68 - 0.70.6 >= 6.11 (No opt-in)
Not supported 0.67.5 and below <= 6.11

 

⚠️ Scandit SDK versions 6.28.1 and 7.0.0 do not support React Native New Architecture. 

 

How to Upgrade to New Architecture

The Scandit SDK for React Native can be installed using any package manager.

Only install the necessary packages below for your project. 

npm i scandit-react-native-datacapture-core
npm i scandit-react-native-datacapture-barcode
npm i scandit-react-native-datacapture-id
npm i scandit-react-native-datacapture-label
npm i scandit-react-native-datacapture-parser

ℹ️ Installing with @latest is recommended for the most recent features and best performance.

npm i scandit-react-native-datacapture-core@latest

 

Other project dependencies may need to be updated for React Native New Architecture migration. We recommend using the React Native Upgrade Helper by React Native Community to update projects.

ℹ️ Use the React Native Upgrade Helper to update your existing projects.
https://react-native-community.github.io/upgrade-helper/


Then, use @rnx-kit to update dependencies in the package.json for compatibility.

ℹ️ Use @rnx-kit/align-deps by Microsoft to validate package dependencies work with any given React Native version.

https://microsoft.github.io/rnx-kit/docs/tools/align-deps

Check for version incompatibility within package.json dependencies.

npx rnx-align-deps --requirements react-native@0.77.0

Then, re-run the command above with --write appended to fix the issues.

 

The React Native Community now recommends including @react-native-community/cli in package.json to ensure a consistent React Native version for all project contributors rather than installing it on the system globally.

⚠️ Install @react-native-community/cli within the package.json “devDependencies” instead of using the deprecated react-native global CLI tool to use npx react-native ... for commands.

npm install --save-dev @react-native-community/cli
yarn add -D @react-native-community/cli

Then, re-run the command above with --write appended to fix the issues.

 

Frequently Ask Questions

When was New Architecture introduced?

React Native introduced New Architecture in version 0.68. This was by "opt-in only" from versions 0.68.0 - 0.75.4, requiring it to be turned on.

React Native 0.76.0 and up now turn on New Architecture by default.

 

What features are included in New Architecture?

Turbo Modules
Native module system that replaces the JSON-serialized bridge with C++ bridge for near-instant native system access.

Fabric
Rendering engine that replaces JavaScript "Shadow Thread" with C++ Synchronous Render Thread for smooth UI updates, animations, and gestures.

Codegen
Type-generation system that replaces manual Flow/TypeScript interfaces with automatically generated C++ native code for type-safe communication between JavaScript and native platforms.

JSI (JavaScript Interface)
Communication layer that replaces BatchedBridge with direct C++ references to native objects, enabling JavaScript to hold and interact with native memory.

Yoga
Cross-platform layout engine that replaces JavaScript layout calculations with native C++ implementations for faster rendering and more efficient memory usage.

 

Learn more

See the Scandit React Native documentation and samples on Github to learn more.

Was this article helpful?
1 out of 1 found this helpful
Have more questions? Submit a request