iOS、Android、Flutter、React Native

安装 one package per platform

每个平台都有一个接受公钥和项目 id 的 Blipit 包。崩溃、ANR 和未捕获的异常会自动上报;请保留原生崩溃的调试符号,因为符号文件暂未被读取。

1React Native

sh
npm install @blipit/react-native @sentry/react-native
npx pod-install
tsx
import * as Blipit from "@blipit/react-native";

Blipit.init({ key: "<public key>", project: <project id>, environment: "production", release: "myapp@1.4.2" });

export default Blipit.wrap(App);

2Flutter

sh
flutter pub add blipit_flutter
main.dart
import 'package:blipit_flutter/blipit_flutter.dart';

Future<void> main() async {
  await Blipit.init(
    key: '<public key>',
    project: <project id>,
    environment: 'production',
    release: 'myapp@1.4.2',
    appRunner: () => runApp(const MyApp()),
  );
}

3iOS 和 macOS(Swift Package)

在 Xcode 中,File › Add Package Dependencies,输入仓库 URL;或将其添加到 Package.swift。然后在启动时调用一次 start。

Package.swift
.package(url: "https://github.com/blipit-io/blipit-swift", from: "0.1.0")
swift
import BlipitSwift

Blipit.start(key: "<public key>", project: "<project id>", environment: "production", release: "myapp@1.4.2")

4Android

在 settings.gradle.kts 的 repositories 中添加 JitPack,在 app 模块中添加依赖,并在 Application.onCreate 中调用 init。

settings.gradle.kts
dependencyResolutionManagement {
    repositories {
        google()
        mavenCentral()
        maven("https://jitpack.io")
    }
}
build.gradle.kts (app)
implementation("com.github.blipit-io:blipit-android:v0.1.2")
kotlin
import io.blipit.android.Blipit

class App : Application() {
    override fun onCreate() {
        super.onCreate()
        Blipit.init(this) {
            key = "<public key>"
            project = "<project id>"
            environment = "production"
            release = "myapp@1.4.2"
        }
    }
}

5验证是否生效

打开 app.blipit.io 中的“问题”。首个事件几秒钟内就会出现,并归组为一个问题,负责人会收到邮件。

须知

  • 所有平台都支持手动捕获:captureException、captureMessage、setUser、setTag、addBreadcrumb,以及用于登录尝试的 captureSecurity。
  • Expo 项目照常添加 @sentry/react-native/expo 配置插件;Blipit 密钥和项目 id 写在代码中。

遇到问题?发邮件至 support@blipit.io。每个项目的密钥和确切的 DSN 在 app.blipit.io 的“API 密钥”下。