旧版安装指南
Adapty 包含两个关键 SDK,用于无缝集成到您的移动应用中:
- 核心 AdaptySDK:这是 Adapty 在您的应用中正常运行所必需的基础 SDK。
- AdaptyUI SDK:如果您使用 Adapty 付费墙编辑工具,则需要此可选 SDK。付费墙编辑工具是一款用户友好的无代码工具,可轻松创建跨平台付费墙。这些付费墙在我们看板的可视化构建器中构建,完全在设备上以原生方式运行,只需极少的工作即可创建出色的内容。
您目前需要 react-native-adapty 2.4.7 或更高版本才能使用 UI SDK。
请参考下方的兼容性表格,选择正确的 Adapty SDK 和 AdaptyUI SDK 组合。
| Adapty SDK 版本 | AdaptyUI 版本 |
|---|---|
| 2.7.0 – 2.9.2 | 2.0.0 - 2.0.1 |
| 2.9.3 - 2.9.8 | 2.1.0 |
| 2.10.0 | 2.1.1 |
| 2.10.1 | 2.1.2 |
| 2.11.2 | 2.11.0 |
| 2.11.3 | 2.11.1 |
| 3.0.1 | 3.0.0-3.0.1 |
| 3.1.0 | 3.1.0 |
发布应用前请完成发布检查清单
在发布应用之前,请务必仔细阅读发布检查清单。该清单确保您已完成所有必要步骤,并提供评估集成成功与否的标准。
安装 Adapty SDK
目前,React Native 提供两种开发路径:Expo 和纯 React Native。Adapty 可与两者无缝集成。请参阅下方与您所选配置相匹配的部分。
为 Expo React Native 安装 Adapty SDK
您可以使用 Expo Application Services(EAS)简化开发流程。虽然配置可能因您的设置而有所不同,但以下是最常见且最简单的配置方式:
-
如果您尚未安装 EAS 命令行界面(CLI),可以使用以下命令进行安装:
npm install -g eas-cli -
在项目根目录中,安装 dev client 以创建开发构建:
expo install expo-dev-client -
运行安装命令:
expo install react-native-adapty expo install @adapty/react-native-ui -
针对 iOS:使用 EAS CLI 创建 iOS 构建。此命令可能会提示您提供其他信息。您可以参阅 Expo 官方文档 了解更多详情:
eas build --profile development --platform ios -
针对 Android:使用 EAS CLI 创建 Android 构建。此命令可能会提示您提供其他信息。您可以参阅 Expo 官方文档 了解更多详情:
eas build --profile development --platform android -
使用以下命令启动开发服务器:
expo start --dev-client
完成以上步骤后,应用将可以正常运行并集成 react-native-adapty。
可能出现的错误:
| 错误 | 描述 |
|---|---|
Failed to start (Invariant Violation: Native module cannot be null) | 如果您通过 CLI dev client 扫描二维码,可能会遇到此错误。要解决此问题,您可以尝试以下方法: > 在您的设备上打开 EAS 构建的应用(应显示某个 Expo 屏幕),然后手动输入 Expo 提供的 URL(见下方截图)。您可以使用 JS 函数 |
使用纯 React Native 安装 Adapty SDK
如果您选择使用纯原生方式管理 React Native 内购,请参阅以下说明:
-
在您的项目中,运行安装命令:
yarn add react-native-adapty yarn add @adapty/react-native-ui -
针对 iOS:安装所需的 pods:
pod install --project-directory=ios pod install --project-directory=ios/最低支持的 iOS 版本为 13.0,但新版付费墙编辑工具需要 iOS 15.0 或更高版本。
如果在安装 pod 时遇到错误,请在您的
ios/Podfile中找到以下行并更新最低目标版本。之后,您应该可以顺利运行pod install。-platform :ios, min_ios_version_supported +platform :ios, 15.0 -
针对 Android:更新
/android/build.gradle文件。确保存在kotlin-gradle-plugin:1.8.0依赖项或更新版本:... buildscript { ... dependencies { ... classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.8.0" } } ...
配置 Adapty SDK
要使用 Adapty SDK,请在您的_核心组件_(如 App.tsx)中导入 adapty 并调用 activate。建议将激活代码置于 React 组件之前,以确保在激活之前不会调用其他 Adapty 方法。
import { adapty, LogLevel } from 'react-native-adapty';
adapty.activate('PUBLIC_SDK_KEY', {
observerMode: false,
customerUserId: 'YOUR_USER_ID',
logLevel: LogLevel.ERROR,
__debugDeferActivation: false,
ipAddressCollectionDisabled: false,
ios: {
idfaCollectionDisabled: false,
},
activateUi: true, // NOT necessary as the default value is `true`, but you can pass `false` if you don't use the Paywall Builder
mediaCache: {
memoryStorageTotalCostLimit: 100 * 1024 * 1024, // 100MB
memoryStorageCountLimit: 2147483647, // 2^31 - 1
diskStorageSizeLimit: 100 * 1024 * 1024, // 100MB
},
});
const App = () => {
// ...
}
激活参数:
| 参数 | 是否必填 | 描述 |
|---|---|---|
| apiKey | 必填 | 公共 SDK 密钥是将 Adapty 集成到您的移动应用中所使用的唯一标识符。您可以在 Adapty 看板中复制它:App settings -> General 标签 -> API Keys 部分。 SDK 密钥对每个应用都是唯一的,因此如果您有多个应用,请确保选择正确的一个。 请确保在 Adapty 初始化时使用公共 SDK 密钥,因为密钥仅用于服务端 API。 |
| observerMode | 可选 | 一个布尔值,用于控制观察者模式。如果您自己处理购买和订阅状态,并使用 Adapty 发送订阅事件和分析数据,请开启此选项。默认值为 🚧 在观察者模式下运行时,Adapty SDK 不会关闭任何交易,请确保您自行处理。 |
| customerUserId | 可选 | 您系统中的用户标识符。我们会将其与订阅和分析事件一起发送,以便将事件与正确的用户画像匹配。您也可以在用户画像部分使用 如果您在开始使用 Adapty 时没有用户 ID,可以稍后使用 |
| logLevel | 可选 | 一个字符串参数,使 Adapty 记录错误和其他重要信息,以帮助您了解发生了什么。 |
| __debugDeferActivation | 可选 | 一个布尔参数,允许您延迟 SDK 激活,直到下次调用 Adapty。此参数仅用于开发目的,不应在生产环境中使用。 |
| ipAddressCollectionDisabled | 可选 | 设置为 默认值为 有关 IDFA 收集的更多详情,请参阅分析集成部分。 |
| idfaCollectionDisabled | 可选 | 一个布尔参数,允许您为 iOS 应用禁用 IDFA 收集。默认值为 false。有关更多详情,请参阅分析集成部分。 |
请注意,为了在您的移动应用中显示付费墙和产品,以及使分析功能正常工作,您需要展示付费墙,并且如果您使用的付费墙不是通过付费墙编辑工具创建的,还需要在应用内处理购买流程。