应用跟踪
Tianji 提供了一个强大的 SDK 用于跟踪应用中的事件和用户行为。本指南说明了如何在项目中集成和使用应用跟踪 SDK。
安装
在项目中安装 Tianji React Native SDK:
npm install tianji-react-native
# 或者
yarn add tianji-react-native
# 或者
pnpm add tianji-react-native
初始化
在使用任何跟踪功能之前,您需要用您的 Tianji 服务器 URL 和应用 ID 初始化应用 SDK:
import { initApplication } from 'tianji-react-native';
initApplication({
serverUrl: 'https://tianji.example.com', // 您的 Tianji 服务器 URL
applicationId: 'your-application-id' // 您的应用标识符
});
事件跟踪
您可以在应用中跟踪自定义事件以监视用户操作和行为:
import { reportApplicationEvent } from 'tianji-react-native';
// 跟踪一个简单事件
reportApplicationEvent('Button Clicked');
// 跟踪带有附加数据的事件
reportApplicationEvent('Purchase Completed', {
productId: 'product-123',
price: 29.99,
currency: 'USD'
});
屏幕跟踪
跟踪应用中的屏幕浏览以了解用户导航模式:
设置当前屏幕
您可以设置将在后续事件中包含的当前屏幕信息:
import { updateCurrentApplicationScreen } from 'tianji-react-native';
// 用户导航时更新当前屏幕
updateCurrentApplicationScreen('ProductDetails', { productId: 'product-123' });
报告屏幕浏览
明确地报告屏幕浏览事件:
import { reportApplicationScreenView } from 'tianji-react-native';
// 报告当前屏幕浏览
reportApplicationScreenView();
// 或报告特定屏幕浏览
reportApplicationScreenView('Checkout', { cartItems: 3 });
集成 expo-router
import { useGlobalSearchParams, usePathname } from 'expo-router'
import { reportApplicationScreenView } from 'tianji-react-native'
function App() {
const pathname = usePathname()
const params = useGlobalSearchParams()
useEffect(() => {
reportApplicationScreenView(pathname, params)
}, [pathname, params])
}
用户识别
在应用中识别用户以在会话之间跟踪他们的行为:
import { identifyApplicationUser } from 'tianji-react-native';
// 使用用户信息识别用户
identifyApplicationUser({
id: 'user-123', // 唯一用户标识符
email: '[email protected]',
name: 'John Doe',
// 添加其他用户属性
plan: 'premium',
signupDate: '2023-01-15'
});
API 参考
initApplication(options)
初始化应用跟踪 SDK。
参数:
options: ApplicationTrackingOptionsserverUrl: 您的 Tianji 服务器 URL(例如,'https://tianji.example.com')applicationId: 您的应用标识符
reportApplicationEvent(eventName, eventData?, screenName?, screenParams?)
向 Tianji 服务器发送应用事件。
参数:
eventName: 事件名称(最多 50 个字符)eventData: (可选)事件数据对象screenName: (可选)覆盖当前屏幕的屏幕名称screenParams: (可选)覆盖当前屏幕参数的屏幕参数
updateCurrentApplicationScreen(name, params)
更新当前应用屏幕信息。
参数:
name: 屏幕名称params: 屏幕参数对象
reportApplicationScreenView(screenName?, screenParams?)
向 Tianji 服务器发送屏幕浏览事件。
参数:
screenName: (可选)覆盖当前屏幕的屏幕名称screenParams: (可选)覆盖当前屏幕参数的屏幕参数
identifyApplicationUser(userInfo)
在应用中识别用户。
参数:
userInfo: 用户识别数据对象
负载限制
- 语言信息:最多 35 个字符
- 操作系统信息:最多 20 个字符
- URL 信息:最多 500 个字符
- 事件名称:最多 50 个字符