
Aptabase 反应原生 SDK
使用 Aptabase 、 开源、 隐私第一和简单分析的移动、 桌面和 Web Apps 设备.
安装
使用 SDK 安装 npm 或您的首选 JavaScript 软件包管理器
npm add @aptabase/react-native
机器人要求
如果你的目标是Android,你需要增加以下权限: AndroidManifest.xml数字 :
<uses-permission android:name="android.permission.INTERNET" />
网络支持
此 SDK 也支持 React Environment Web !
[注] 此特性默认已禁用 。 要让它生效,你需要通过
enableWeb选项.
Aptabase.init("<YOUR_APP_KEY>", {
enableWeb: true,
appVersion: "1.0.0", // required on web — no native module provides it
});
启用后,SDK将使用与Web SDK相同的行为来追踪网络环境中的事件. 也就是说事件会立即送到 /event 结尾而不是组合到 /events 终点.
使用量
首先,你必须得到你的 App Key 从Aptabase可以找到它 Instructions 菜单.
通过调用 SDK 初始化 init 函数在声明您的 App 组件 :
import Aptabase from "@aptabase/react-native";
Aptabase.init("<YOUR_APP_KEY>"); // 👈 this is where you enter your App Key
export default function App() {
return <Counter />;
}
之后,你可以开始跟踪事件 trackEvent数字 :
import { trackEvent } from "@aptabase/react-native";
import { useState } from "react";
export function Counter() {
const [count, setCount] = useState(0);
const increment = () => {
setCount(count + 1);
trackEvent("increment", { count });
};
const decrement = () => {
setCount(count - 1);
trackEvent("decrement", { count });
};
return (
<View>
<Button onPress={increment} title="Increment" />
<Button onPress={decrement} title="Decrement" />
<Text>Count is {count}</Text>
</View>
);
}
要禁用跟踪事件, 您可以调用 dispose 函数。 这将停止并解除SDK的初始化.
import Aptabase from "@aptabase/react-native";
Aptabase.dispose();
博览会应用说明 : 在 Expo Go 上运行时在开发过程中发送的事件不会有 App Version 属性,因为在 Expo Go 中没有本地模块。 然而,当你建立你的应用 运行在一个真正的设备 App Version 属性将可用。 或者,您也可以设置 appVersion 期间 init 在开发期间也可以使用.
几个重要说明:
- SDK会用一些有用的信息自动增强事件,如OS,app版本等.
- 你控制着被送到阿普塔基地的东西 此 SDK 不自动跟踪任何事件, 您需要呼叫
trackEvent手动.- 因此,一般建议在启动时至少跟踪一个事件
- 你不需要等待着
trackEvent函数,会在后台运行. - 只允许自定义属性上的字符串和数字值
报告错误
错误报告在β中. 报告出现在
Errors你的Aptabase仪表板的一页.
使用 trackError 报告你发现和处理的错误:
import { trackError } from "@aptabase/react-native";
try {
await doSomething();
} catch (error) {
trackError(error); // severity: error
}
对于您的应用程序无法恢复的错误, 请将报告标为致命 :
trackError(error, { fatal: true }); // severity: fatal
同时自动报告未发现的错误和相撞, 并允许在 init数字 :
Aptabase.init("<YOUR_APP_KEY>", {
enableCrashReporting: true,
});
关于错误报告的几个重要说明:
- 每份报告包括错误类型、消息、堆栈跟踪、严重性(
error或者说fatal及其如何被俘获(handled, (中文(简体) ),unhandled或者说crash) (中文(简体) ). - 在原生时,立即发送报告,并保存在记忆中,以便在网络无法使用时进行重试。 在网络上,立即发送报告,不重复(网络要求
enableWeb选项). - 错误以单独的每月错误配额计算 。 当配额用完后,服务器拒绝新的报告,直到它重新发送.
- 被 React Error 捕获出错误 边界永远不会到达全局错误处理器 – call
trackError如果需要报告,请从边界上报到. - 原生(非JS)相撞没有被捕获. 在开发过程中,致命的JS错误显示RedBox而不是崩溃了应用程序.
准备提交 App Store
在向苹果App Store提交应用程序时,需要填写 App Privacy 形式。 你可以找到我们所有的答案 使用 Aptabase 时如何填写 App 隐私 向导.
AI/LLM整合说明见 页:1