安装 React Native SDK
适用于Atlas Device SDK React Native的React Native 支持开发 使用JavaScript 和Typescript 语言的应用程序。React React Native使您构建使用iOS 框架。
先决条件
在开始之前,请确保您的开发环境满足以下前提条件。这些条件是最新版本的 React Native SDK 所必须的:
请按照 React Native CLI 官方快速入门说明设置环境。
React Native v 0.71.4或更高版本。 查看 兼容性图表 以确定哪个版本的 React Native 与特定 React Native SDK 版本兼容。
注意
Realm JS v10.6.0 及更高版本支持 Mac Catalyst
使用 SDK 与 Expo
您可以将 React Native SDK 与裸 React Native 应用或 Expo 结合使用。此页面和 React Native SDK 文档一般假定您使用的是裸 React Native 应用,而不是 Expo。
如果您想要将 React Native SDK 与 Expo 结合使用,请参阅使用 Expo 快速启动页面。
在 Bare React Native App 中安装 SDK
选择下面与您的 React Native 版本相对应的标签页。按照步骤创建一个 React Native 项目并将 React Native SDK 添加到其中。
提示
Atlas Device SDK 和 Realm
SDK 使用 Realm Core 数据库来实现设备数据持久化。当您安装 React Native SDK 时,包的名称会反映 Realm 的命名方式。
Enable Hermes
注意
要使用 Hermes,应用程序必须使用 Realm v11 或更高版本以及 React Native 0.70.0 或更高版本
该 SDK 支持 React Native 经过优化的移动式 JavaScript 引擎 Hermes。默认情况下,使用 React Native CLI 创建的新应用程序已启用 Hermes。
我们建议将 Hermes 与 SDK 结合使用。不过,如果应用程序需要,该 SDK 还支持 JavaScriptCore (JSC) 引擎。
目前使用 JSC 的现有应用程序可以分别为 Android 和 iOS 启用 Hermes。要了解如何操作,请参阅 React Native 文档中的 Hermes 用法指南。
启用 TypeScript(推荐,但可选)
TypeScript 是 JavaScript 的超集,其中增加了静态类型检查和其他功能,旨在实现更加稳健的应用程序级开发。如果想在项目中使用 TypeScript,请遵循 React Native 团队的官方 TypeScript 和 React Native 指南。该 SDK 原生支持 TypeScript,并可轻松集成到 TypeScript 项目中。
安装 @realm/react 库
@realm/react 是一个 npm 软件包,可以简化常见的 SDK 操作,例如查询、写入数据库以及监听对象更改通知。这可以减少样板代码,例如创建自己的监听器和状态管理。这可以减少样板代码,例如创建自己的监听器和状态管理。
@realm/react
通过一组具有各种钩子的提供程序提供对 SDK 的访问。当数据发生变化时,钩子会更新 React 状态。这意味着使用这些钩子的组件会在数据库中的数据发生任何变化时重新渲染。
注意
将 @realm/react 与 Realm JS 版本 11 或更高版本结合使用
使用RealmJavaScript 版本11.0.0 或更高版本的 @realm/React ,则必须使用@realm/react
版本0 。4 .0或更高版本。
在 React Native 项目目录中,使用如下命令将 @realm/react
添加到项目中:
npm install @realm/react
运行应用
React Native 支持同时开发使用相同 React 代码库的 iOS 和 Android 应用程序。可以编辑项目目录中的 .js
或 .ts
源文件,以开发应用程序。
在开发过程中,应用程序将 React 源代码作为本地绑定服务器的捆绑包进行读取。要运行绑定服务器,请在 React Native 项目目录中使用以下命令:
npm start
随着绑定服务器的运行,现在可以启动 Android 和 iOS 应用程序:
要运行Android应用,请使用 Android Studio 打开项目目录中的
android
目录,然后单击 Run 。要运行 iOS 应用程序,请使用 Xcode 打开
ios
目录中的.xcworkspace
文件。如果在安装过程中未使用 CocoaPods,请打开ios
目录中的.xcodeproj
文件。打开项目后,单击 Run。
注意
@ 域/ React版本要求
域/React 库需要React 原生版本>= 0.59
。如果您使用旧版本的React Native进行开发,则可以使用不带@realm/react
的 SDK。 由于React Native SDK文档大量使用@realm/react
包,因此您可能需要参阅Node.js SDK文档。
确认链接步骤(Android)
对于 Android 开发,请确认链接步骤已将 SDK 模块正确添加到 Gradle 配置文件中。 在某些版本中, React Native已知无法正确链接 SDK。 如果发生这种情况,您可以通过将以下任何缺失的行添加到相应文件来手动链接 SDK。
首先,确保android/settings.gradle
文件包含 SDK 并指定 SDK 的项目目录:
rootProject.name = 'MyApp' include ':realm' project(':realm').projectDir = new File(rootProject.projectDir, '../node_modules/realm/android') apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings) include ':app'
其次,确保android/app/build.gradle
文件的dependencies
部分将 SDK 声明为依赖项:
dependencies { implementation project(':realm') implementation fileTree(dir: "libs", include: ["*.jar"]) implementation "com.facebook.react:react-native:+" // From node_modules // ... }
最后,确保MainApplication.java
文件导入RealmReactPackage
并在其包列表中将其实例化。
import io.realm.react.RealmReactPackage; // Add this import. public class MainApplication extends Application implements ReactApplication { protected List<ReactPackage> getPackages() { return Arrays.<ReactPackage>asList( new MainReactPackage(), new RealmReactPackage() // Add this line. ); } // ... }
启用 TypeScript(可选)
TypeScript 是 JavaScript 的超集,其中增加了静态类型检查和其他功能,旨在实现更加稳健的应用程序级开发。如果想在项目中使用 TypeScript,请遵循 React Native 团队的官方 TypeScript 和 React Native 指南。该 SDK 原生支持 TypeScript,并可轻松集成到 TypeScript 项目中。
运行应用
React Native 支持同时开发使用相同 React 代码库的 iOS 和 Android 应用程序。可以编辑项目目录中的 .js
或 .ts
源文件,以开发应用程序。
在开发过程中,应用程序将 React 源代码作为本地绑定服务器的捆绑包进行读取。要运行绑定服务器,请在 React Native 项目目录中使用以下命令:
npm start
随着绑定服务器的运行,现在可以启动 Android 和 iOS 应用程序:
要运行 Android 应用程序,请使用 Android Studio 打开项目目录中的
android
目录,然后单击 Run。要运行 iOS 应用程序,请使用 Xcode 打开
ios
目录中的.xcworkspace
文件。如果在安装过程中未使用 CocoaPods,请打开ios
目录中的.xcodeproj
文件。打开项目后,单击 Run。
导入 SDK
在要使用 SDK 的源文件顶部添加以下命令行:
import Realm from "realm";