Skip to content

GetuiLaboratory/react-native-idosdk

Repository files navigation

react-native-idosdk

个推 IDOSDK 的 React Native 插件,用于接入运营统计、事件采集和用户画像能力。

当前版本:1.0.6

安装

在 React Native 项目根目录执行:

npm install react-native-idosdk@1.0.6 --save

React Native 0.60 及以上项目会自动链接原生模块。iOS 项目还需要安装 Pods:

npx pod-install

Android 示例工程使用 React 19.0.0 和 React Native 0.79.1。请按项目所用 React Native 版本完成原生环境配置。

配置

应用 AppID 请在个推开发者中心创建应用后获取。

Android

android/app/src/main/AndroidManifest.xml<application> 节点内配置 AppID 和安装渠道:

<meta-data android:name="GETUI_APPID" android:value="你的 AppID" />
<meta-data android:name="GT_INSTALL_CHANNEL" android:value="" />

插件已声明 IDOSDK 所需的原生依赖、权限和组件。无需添加 react-native-getuiPUSH_APPKEYPUSH_APPSECRET 等旧推送插件配置。详细说明见Android 集成文档

iOS

使用 Autolinking 时只需执行 npx pod-install。旧项目如未启用 Autolinking,可在目标 target 的 Podfile 中加入:

pod 'IdoSdkRN', :path => '../node_modules/react-native-idosdk'

然后执行 pod install。IDOSDK 不需要在 AppDelegate 中注册推送、DeviceToken 或 VoIP;初始化请在 JavaScript 中调用 startSdk。详细说明见iOS 集成文档

HarmonyOS

HarmonyOS 当前需要手动 Link,完整流程见鸿蒙文档

JavaScript 使用

在调用其他接口前先配置可选项并初始化 SDK。gtcid 在初始化完成前可能为空,可在业务侧稍后再次读取。

import GetuiIdo from 'react-native-idosdk';

const appId = '你的 AppID';
const channel = 'rn';

GetuiIdo.setDebugEnable(__DEV__);
GetuiIdo.setSessionTime(30_000);
GetuiIdo.setMinAppActiveDuration(60_000);
GetuiIdo.setMaxAppActiveDuration(3_600_000);

GetuiIdo.startSdk(appId, channel);

GetuiIdo.version((version) => {
  console.log('IDOSDK version:', version);
});

GetuiIdo.gtcid((id) => {
  console.log('gtcid:', id);
});

GetuiIdo.trackCountEvent('purchase', { sku: 'example', amount: 1 }, '');
GetuiIdo.setProfile({ memberLevel: 'gold' }, '');

时间类配置的单位均为毫秒。支持的接口包括:

  • 初始化与查询:startSdkgtcidversionsetDebugEnable
  • 会话与上传:setSessionTimesetMinAppActiveDurationsetMaxAppActiveDurationsetEventUploadIntervalsetEventForceUploadSizesetProfileUploadIntervalsetProfileForceUploadSize
  • 用户与事件:setUserIdregisterEventPropertiestrackCustomKeyValueEventBegintrackCustomKeyValueEventEndtrackCountEventsetProfile
  • 平台差异:setApplicationGroupIdentifier 仅 iOS 生效;setSyncGenerateGtcidregisterEventProperties 暂未在 HarmonyOS 插件中提供。

示例工程

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors