BlackBerry Dynamics SDK for React Native version 14.0
BlackBerry Dynamics SDK for React Native
version 14.0The
BlackBerry Dynamics SDK for React Native
can be downloaded from BlackBerry Developer Downloads. Development guidance is contained in the README file of the download package.New in this release
Feature | Description |
|---|---|
Changes to supported React Native versions | This release adds support for React Native 0.76.x and 0.77.x.React Native 0.74.x is deprecated and will be removed in an upcoming release.This release removes support for React Native 0.71.x, 0.72.x, and 0.73.x. |
Support for 16 KB page sizes | Android has announced that, starting November 1, 2025, all new and updated apps targeting Android 15 and later must support 16 KB page sizes. For more information, see Android Developers: Support 16 KB page sizes and Android Developers Bog: Get your apps ready for 16 KB page size devices.This release of the BlackBerry Dynamics SDK for React Native is compatible with the 16 KB page size requirement. It is recommended that you run a mock submission of custom BlackBerry
Dynamics apps to Google
Play to identify any additional dependencies that you need to resolve to meet the 16 KB page size requirement.You must use React Native 0.77.x to support 16 KB page sizes. |
Changes for data leakage prevention (DLP) for Android | Previously, for Android , <Text /> and <TextInput /> components were secured using the BlackBerry-Dynamics-for-React-Native-Text and BlackBerry-Dynamics-for-React-Native-TextInput UI components.In this release, those UI components have been removed and a new method is required to secure <Text /> and <TextInput />. For instructions, see the DLP for Android row in the Features section below. |
Support
Feature | Description |
|---|---|
Development requirements |
|
React Native supported versions |
React Native version 0.74.x is deprecated and support will be removed in an upcoming release.The supported versions of React Native require Java 17.Support for 16 KB page sizes on Android requires React Native 0.77.x (or a later version when supported). |
BlackBerry Dynamics SDK supported versions |
|
Node.js | Version 20.19.4 or later |
iOS requirements |
|
Android requirements |
|
Features
Feature | Description |
|---|---|
Integration with BlackBerry
Dynamics | Integration of the BlackBerry Dynamics SDK for iOS and Android into the React Native application is supported by the addition of the BlackBerry-Dynamics-for-React-Native-Base module. You can also integrate a locally downloaded version of BlackBerry Dynamics SDK for iOS into your BlackBerry
Dynamics React Native app. |
Secure connectivity |
|
Secure storage |
|
Data leakage prevention (DLP) for iOS | The <Text /> component, <TextInput /> component, and Clipboard API are secured by integrating BlackBerry
Dynamics . |
Data leakage prevention (DLP) for Android | After you add the base module, use the following command to secure <Text /> and <TextInput /> components; this should be the last command you run before you build the app (using yarn to add or remove a package afterwards will override the changes made by this command): yarn integrate-dlp-android After you run the command, you receive a prompt to confirm the requirement to build the React Native library for Android from source instead of the default way. Confirm with yes to continue and integrate DLP. Note that rebuilding from source may increase the build time to approximately 20 minutes, and requires 25 to 30 GB of free space on the system.Previously, the <Text /> and <TextInput /> components were secured using the BlackBerry-Dynamics-for-React-Native-Text and BlackBerry-Dynamics-for-React-Native-TextInput UI components. These UI components were removed in BlackBerry Dynamics SDK for React Native version 14.0.The BlackBerry-Dynamics-for-React-Native-Clipboard module secures the Clipboard API. |
Inter-Container Communication (ICC) | ICC (also known as AppKinetics) provides service discovery, service consumption, and service providing capabilities for BlackBerry
Dynamics React Native apps and allows secure communication with other BlackBerry
Dynamics apps. To implement some ICC capabilities in BlackBerry
Dynamics React Native apps, use the BlackBerry-Dynamics-for-React-Native-AppKinetics module. |
Support for Yarn package manager |
For more information, see the readme file for each module. |
Importing a prepopulated SQLite database | You can use any of the methods detailed here to import a prepopulated SQLite database: Importing a prepopulated database. The third method is supported for Android only. |
Integration of the BlackBerry Dynamics Launcher | As of SDK version 13.0, the BlackBerry Dynamics Launcher is integrated automatically with the BlackBerry Dynamics SDK for React Native and does not need to be integrated separately. When you add the BlackBerry-Dynamics-for-React-Native-Base module, the BlackBerry Dynamics Launcher is integrated automatically and shown in apps by default.You can use the BlackBerry-Dynamics-for-React-Native-Launcher module to hide or show the BlackBerry Dynamics Launcher :
As of the BlackBerry Dynamics SDK for React Native 13.0, the BlackBerry-Dynamics-for-React-Native-Launcher module should be used only with BlackBerry Dynamics SDK for Android 13.0 or later and the BlackBerry Dynamics SDK for iOS 13.0 or later. |
Package contents
Feature | Description |
|---|---|
Modules |
|
UI components | BlackBerry-Dynamics-for-React-Native-WebView secures the built-in <WebView /> UI component to securely load public and enterprise resources within a WebView. |
Sample apps |
|
Known issues
Image content may not be visible on the iOS clipboard sample app. (GD-63121) |
Flipper cannot be used with the BlackBerry Dynamics SDK for React Native in the debug configuration because it disables some BlackBerry
Dynamics secure networking functionality. Flipper is disabled by default on iOS and Android . If your BlackBerry Dynamics SDK for React Native app does not use the secure connectivity feature (BlackBerry-Dynamics-for-React-Native-Networking module), you can enable Flipper by uncommenting the following:
|
When both default and secure SQLite libraries are linked to an iOS project, it can cause conflicts and unpredictable behavior.Workaround: Remove the sqlite3 dependency in */node_modules/reactnative- webrtc/react-native-webrtc.podspec, and then run pod install again. |