跳转至正文

Firebase Crashlytics Capacitor 插件

适用于 Firebase Crashlytics 的 Capacitor 插件

安装

bun add @capgo/capacitor-firebase-crashlytics bunx cap sync
npm、pnpm 或 yarn
  • npm install @capgo/capacitor-firebase-crashlytics
  • pnpm add @capgo/capacitor-firebase-crashlytics
  • yarn add @capgo/capacitor-firebase-crashlytics

指南

如何在 Capacitor 中使用 Firebase Crashlytics

使用 @capgo/capacitor-firebase-crashlytics

用于 Firebase Crashlytics 的 Capacitor 插件

安装

bun add @capgo/capacitor-firebase-crashlytics
bunx cap sync

bunx cap sync 将插件的原生 code 复制到你的原生项目中。每次升级插件后都要重新运行。

导入

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';

API 概览

方法 描述
crash 强制触发崩溃以测试实现效果。
setCustomKey 设置与后续 fatal 和 non-fatal 报告关联的自定义键值对。
setUserId 设置与后续 fatal 和 non-fatal 报告关联的用户 ID(标识符)。
log 添加自定义日志消息并随崩溃数据一同发送,以便为崩溃前的事件提供更多上下文信息。
setEnabled 启用/禁用自动数据收集。该设置在下次启动 App 时生效。
isEnabled 返回是否已启用自动数据收集。
didCrashOnPreviousExecution 返回 App 在上次运行时是否发生过崩溃。
sendUnsentReports 在下次启动时将所有未发送的报告上传至 Crashlytics。
deleteUnsentReports 删除设备上所有未发送的报告。
recordException 记录一条非致命报告,以便发送到 Crashlytics。

示例

crash()

强制触发崩溃以测试实现效果。

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';

await FirebaseCrashlytics.crash({ message: 'Hello from Capacitor' });

setCustomKey()

设置与后续 fatal 和 non-fatal 报告关联的自定义键值对。

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';

await FirebaseCrashlytics.setCustomKey({
  key: 'key-123',
  value: 'value',
  type: 'string',
});

setUserId()

设置与后续 fatal 和 non-fatal 报告关联的用户 ID(标识符)。

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';

await FirebaseCrashlytics.setUserId({ userId: 'user-id-123' });

log()

添加自定义日志消息并随崩溃数据一同发送,以便为崩溃前的事件提供更多上下文信息。

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';

await FirebaseCrashlytics.log({ message: 'Hello from Capacitor' });

setEnabled()

启用/禁用自动数据收集。该设置在下次启动 App 时生效。

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';

await FirebaseCrashlytics.setEnabled({ enabled: true });

isEnabled()

返回是否已启用自动数据收集。

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';

const result = await FirebaseCrashlytics.isEnabled();
console.log(result);

上表列出了 10 个核心方法。监听器、版本辅助函数以及每个方法的完整接口定义,请参阅 GitHub 仓库.

完整参考文档

从“使用 @capgo/capacitor-firebase-crashlytics”继续

如果你正在使用 使用 @capgo/capacitor-firebase-crashlytics 要规划原生插件工作,请将其与 Capgo 插件目录 查看 Capgo 插件目录中的产品工作流, Capgo 提供的 Capacitor 插件 查看由 Capgo 提供的 Capacitor 插件中的实现细节, 添加或更新插件 查看添加或更新插件中的实现细节, Ionic Enterprise 插件替代方案 查看 Ionic Enterprise 插件替代方案中的产品工作流,以及 Capgo Native Build 查看 Capgo Native Builds 中的产品工作流。

常见问题

Firebase Crashlytics 插件常见问题

如何在 Capacitor 应用中安装 Firebase Crashlytics 插件?

运行 "bun add @capgo/capacitor-firebase-crashlytics"(或 "npm install @capgo/capacitor-firebase-crashlytics"),然后运行 "bunx cap sync",让 iOS 和 Android 项目同步原生 code。再在应用 code 中从 "@capgo/capacitor-firebase-crashlytics" 导入。

@capgo/capacitor-firebase-crashlytics 是否支持 React、Vue 和 Angular?

是的。Firebase Crashlytics 是一个 Capacitor 包,因此它支持任何在 Capacitor 中运行的 Web 框架,包括 Ionic、React、Vue、Angular、Svelte 以及纯 JavaScript。

@capgo/capacitor-firebase-crashlytics 支持哪个 Capacitor 版本?

Capgo 插件遵循 Capacitor 的主版本号:请使用与 Capacitor 主版本号一致的插件主版本(例如插件 v8 对应 Capacitor 8)。GitHub README 中的兼容性表列出了仍在维护的版本。

@capgo/capacitor-firebase-crashlytics 是免费开源的吗?

是的。源码(code)已在 GitHub 公开,地址为 https://github.com/Cap-go/capacitor-firebase/tree/main/packages/crashlytics,并且可从 npm 免费安装。欢迎提交 Bug 报告和 Pull Request。

使用 Firebase Crashlytics 的 code 可以不经过 App Store 审核更新吗?

安装或升级插件会改动原生 code,因此需要重新做一次商店构建。之后,调用该插件的 JavaScript、HTML 和 CSS 改动就能通过 Capgo live updates 立即发布。

无需等待 App 审核,即可快速发布 Firebase Crashlytics 的变更

只要插件已包含在你的商店版本中,Capgo live updates 就能在几分钟内把 JavaScript、HTML 和 CSS 的改动推送给用户。

开始使用 Capgo