@capgo/capacitor-firebase-crashlytics

中文文档
8.3.1发布于 2026/09/14MPL-2.0TypeScriptESM + CJS零依赖构建来源已验证近 30 天下载 2251

Firebase Crashlytics的电容插件.

中文使用文档
文档目录28 节
  1. QQ 与 Capgo 为您的 App 即时更新
  2. 缺少一个功能? 我们会为你建造插件..
  3. 兼容性
  4. 安装
  5. 机器人
  6. iOS系统
  7. 配置
  8. 演示
  9. 启动模板
  10. 使用量
  11. API 密码
  12. 崩溃(...)
  13. 设置 CustomKey (...)
  14. set 用户(...)
  15. 日志(...)
  16. 设置可启用(...)
  17. 已启用
  18. 先前的崩溃执行 ()
  19. 发送未经同意的报告( )
  20. 删除未经同意的报告( )
  21. 记录例外(...)
  22. 获取 PluginVersion ()
  23. 接口
  24. 类型异名
  25. 测试您的执行
  26. 更改日志
  27. 许可证
  28. 贷项

@ capgo/ 电容- firebase- crashlytics( 电容/电容)

Capgo - Instant updates for Capacitor

非官方电容插件 火灾基地崩溃[^1]

兼容性

插件版本电容版本状态
8.x.x (英语)>=8.x.x积极支持
7.x.x (中文(简体) )7.x.x (中文(简体) )折旧
6.x.x (中文(简体) )6.x.x (中文(简体) )折旧
5.x.x (中文(简体) )5.x.x (中文(简体) )折旧
1.x.x (中文(简体) )4.x.x (中文(简体) )折旧

安装

您可以使用我们的 AI 辅助设置安装插件 。 使用以下命令将 Capgo 技能添加到您的 AI 工具 :

npx skills add https://github.com/cap-go/capacitor-skills --skill capacitor-plugins

然后使用下列提示:

Use the `capacitor-plugins` skill from `cap-go/capacitor-skills` to install the `@capgo/capacitor-firebase-crashlytics` plugin in my project.

如果您更喜欢手动设置,请通过运行以下命令来安装插件,并遵循下面的平台特定指令:

npm install @capgo/capacitor-firebase-crashlytics
npx cap sync

如果您还没有将 Firebase 添加到您的项目中(机器人 编号 : iOS系统) (中文(简体) ).

机器人

崩溃分解插件

首先,将 Crashlytics Gradle 插件的依赖性添加到您的根级( 项目级) Gradle 文件(<project>/build.gradle:

buildscript {
    dependencies {
+       // Add the dependency for the Crashlytics Gradle plugin
+       classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.9'
    }
}

将 Crashlytics Gradle 插件添加到您的模块( 应用级别) Gradle 文件( 通常是) <project>/<app-module>/build.gradle:

apply plugin: 'com.google.firebase.crashlytics'

变量

如果需要, 您可以在您的应用程序中定义以下工程变量 variables.gradle 要更改依赖的默认版本的文件 :

  • $firebaseCrashlyticsVersion 版本 com.google.firebase:firebase-crashlytics (默认 : 20.0.3(中文(简体) )

如果您在工程中遇到其它插件的依赖性冲突, 这会有所帮助 .

iOS系统

要生成人类可读崩溃报告, Crashlytics 需要您工程的调试符号 (dSYM) 文件 . 下列步骤描述您在构建您的应用程序时如何将 dSYM 文件自动上传到 Firebase :

  1. 打开您的项目的 Xcode 工作空间, 然后在左侧导航器中选择其项目文件 .
  2. 从 目标 列表中,选择主构建目标.
  3. 点击 构建设置 选项卡,然后完成以下步骤,使 Xcode 为您的构建生成 dSYMS .
    1. 点击 全体,然后查找 debug information format。 。 。 .
    2. 设定 调试信息格式 改为 DWARF with dSYM File 为你所有的建筑类型.
  4. 点击 构建阶段 选项卡并完成下列步骤:
    1. 点击 + 键 按钮,然后选择 新建运行脚本阶段。 。 。 .

      确定这个新 运行脚本 相位是您的工程的最后一个构建相; 否则 Crashlytics 无法正确处理 dSYMs .

    2. 扩展新 运行脚本 节.

    3. 脚本字段(位于 贝壳 根据您的软件包管理器添加运行的脚本 :

      可可树:

      "${PODS_ROOT}/FirebaseCrashlytics/run"
      

      Swift 软件包管理器 :

      "${BUILD_DIR%/Build/*}/SourcePackages/checkouts/firebase-ios-sdk/Crashlytics/run"
      
    4. 在那个 输入文件 区域,根据您的软件包管理器添加以下文件位置的路径 :

      可可树:

      ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${TARGET_NAME}
      
      $(SRCROOT)/$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)
      

      Swift 软件包管理器 :

      ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}
      
      ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${PRODUCT_NAME}
      
      ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Info.plist
      
      $(TARGET_BUILD_DIR)/$(UNLOCALIZED_RESOURCES_FOLDER_PATH)/GoogleService-Info.plist
      
      $(TARGET_BUILD_DIR)/$(EXECUTABLE_PATH)
      

      如果你有的话 ENABLE_USER_SCRIPT_SANDBOXING=YES 财务报告和审定财务报表 ENABLE_DEBUG_DYLIB=YES 在您的项目构建设置中,还包括:

      ${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${PRODUCT_NAME}.debug.dylib
      

配置

此插件不需要配置 .

演示

这里有一个实例: robingenz/电容器-火力基地-插座-demo

启动模板

以下启动模板可供使用:

使用量

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

const crash = async () => {
  await FirebaseCrashlytics.crash({ message: 'Test' });
};

const setCustomKey = async () => {
  await FirebaseCrashlytics.setCustomKey({
    key: 'page',
    value: 'home',
    type: 'string',
  });
};

const setUserId = async () => {
  await FirebaseCrashlytics.setUserId({
    userId: '123',
  });
};

const log = async () => {
  await FirebaseCrashlytics.log({
    message: 'Test',
  });
};

const setEnabled = async () => {
  await FirebaseCrashlytics.setEnabled({
    enabled: true,
  });
};

const isEnabled = async () => {
  const { enabled } = await FirebaseCrashlytics.isEnabled();
  return enabled;
};

const didCrashOnPreviousExecution = async () => {
  const { crashed } = await FirebaseCrashlytics.didCrashOnPreviousExecution();
  return crashed;
};

const sendUnsentReports = async () => {
  await FirebaseCrashlytics.sendUnsentReports();
};

const deleteUnsentReports = async () => {
  await FirebaseCrashlytics.deleteUnsentReports();
};

const recordException = async () => {
  await FirebaseCrashlytics.recordException({
    message: 'This is a non-fatal message.',
  });
};

import * as StackTrace from 'stacktrace-js';
const recordExceptionWithStacktrace = async (error: Error) => {
  const stacktrace = await StackTrace.fromError(error);
  await FirebaseCrashlytics.recordException({
    message: 'This is a non-fatal message.',
    stacktrace,
  });
};

API 密码

崩溃(...)

crash(options: CrashOptions) => Promise<void>

强制坠机测试实施.

仅供Android和iOS使用.

参数类型
optionsCrashOptions

自: 0.1.0 (中文(简体) )


设置 CustomKey (...)

setCustomKey(options: SetCustomKeyOptions) => Promise<void>

设置一个自定义密钥和值,该密钥和值与随后的致命和非致命报告相关.

仅供Android和iOS使用.

参数类型
optionsCustomKeyAndValue

自: 0.1.0 (中文(简体) )


set 用户(...)

setUserId(options: SetUserIdOptions) => Promise<void>

设置一个与随后的致命和非致命报告相关的用户ID(识别符).

仅供Android和iOS使用.

参数类型
optionsSetUserIdOptions

自: 0.1.0 (中文(简体) )


日志(...)

log(options: LogOptions) => Promise<void>

添加自定义日志消息, 这些信息会随崩溃数据一同发送, 以给自己更多导致崩溃的事件的背景 .

仅供Android和iOS使用.

参数类型
optionsLogOptions

自: 0.1.0 (中文(简体) )


设置可启用(...)

setEnabled(options: SetEnabledOptions) => Promise<void>

启用/ 无法自动收集数据 . 该值在应用程序的下一轮运行之前不应用 .

仅供Android和iOS使用.

参数类型
optionsSetEnabledOptions

自: 0.1.0 (中文(简体) )


已启用

isEnabled() => Promise<IsEnabledResult>

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

仅供iOS使用.

回返情况: Promise<IsEnabledResult>

自: 0.1.0 (中文(简体) )


先前的崩溃执行 ()

didCrashOnPreviousExecution() => Promise<DidCrashOnPreviousExecutionResult>

返回应用程序在上次执行中是否崩溃 .

仅供Android和iOS使用.

回返情况: Promise<DidCrashOnPreviousExecutionResult>

自: 0.1.0 (中文(简体) )


发送未经同意的报告( )

sendUnsentReports() => Promise<void>

在下次启动时将任何未发送的报告上传到崩溃分析 .

当自动数据收集被启用时,崩溃器会在启动时自动上传报告.

仅供Android和iOS使用.

自: 0.1.0 (中文(简体) )


删除未经同意的报告( )

deleteUnsentReports() => Promise<void>

删除设备上任何未发送的报告.

仅供Android和iOS使用.

自: 0.1.0 (中文(简体) )


记录例外(...)

recordException(options: RecordExceptionOptions) => Promise<void>

记录一份非致命报告 发送到Crashlytics.

仅供Android和iOS使用.

参数类型
optionsRecordExceptionOptions

自: 0.1.0 (中文(简体) )


获取 PluginVersion ()

getPluginVersion() => Promise<GetPluginVersionResult>

获取此插件的版本 .

回返情况: Promise<GetPluginVersionResult>

自: 8.0.2 联合国


接口

崩溃选项

Prop类型自兹
messagestring0.1.0 (中文(简体) )

自定义密钥和 Value

Prop类型自兹
keystring7.1.0 (中文(简体) )
valuestring | number | boolean7.1.0 (中文(简体) )
type'string' | 'boolean' | 'long' | 'double' | 'int' | 'float'7.1.0 (中文(简体) )

设置用户选择

Prop类型自兹
userIdstring0.1.0 (中文(简体) )

日志选项

Prop类型自兹
messagestring0.1.0 (中文(简体) )

设置可选选项

Prop类型自兹
enabledboolean0.1.0 (中文(简体) )

已启用结果

Prop类型自兹
enabledboolean0.1.0 (中文(简体) )

DidCrash 上一个执行结果

Prop类型自兹
crashedboolean0.1.0 (中文(简体) )

记录例外选项

Prop类型说明自兹
messagestring将信息记录为非致命例外.0.1.0 (中文(简体) )
codenumber特定出错域内的出错代码 . 请注意: 如果 stacktrace 提供。 仅供iOS使用.0.1.0 (中文(简体) )
domainstring包含错误域的字符串 . 请注意: 如果 stacktrace 提供。 仅供iOS使用.0.1.0 (中文(简体) )
keysAndValuesCustomKeyAndValue[]除应用级自定义密钥外,还有一系列密钥和与非致命例外关联的值. 请注意: 如果 stacktrace 提供.7.1.0 (中文(简体) )
stacktraceStackFrame[]由 sacktrace.js 生成的堆栈.1.1.0 国家

堆叠外观

由 stacktrace.js 生成的 Stacktrace 子集.

Prop类型
lineNumbernumber
fileNamestring
functionNamestring

获取 PluginVersion 结果

Prop类型说明自兹
versionstring此插件的语义版本 .8.0.2 联合国

类型异名

设置自定义关键选项

CustomKeyAndValue

测试您的执行

给 您可以找到更多关于如何测试火地崩溃处理程序的信息. 除其他外,你会找到如何正确的信息 调整工程的调试设置 在iOS下如何进行 试试看。 。 。 .

如果你得到iOS的模糊的崩溃报告, 请确保你有 初始化崩溃 正确,看一看 本指南如果Crashlytics找不到你的应用程序的dSYM,它提供了一些解决问题的方法.

更改日志

见 变动情况。 。 。 .

许可证

见 自由主义。 。 。 .

贷项

此插件基于 社区火灾基地崩溃 插件 . 感谢所有为这个项目捐款的人!

[^1]: 这个项目不附属于Google LLC或其任何子公司或子公司,也不获得其认可、支持、赞助或批准.

版本与发布记录

@capgo/capacitor-firebase-crashlytics 共发布 6 个版本,首次发布于 2025/11/24;过去 12 个月发布了 6 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
8.3.1latest2026/09/141 个月前
8.0.22026/02/089 个月前
8.0.12026/02/089 个月前
7.4.22025/12/0411 个月前
7.4.12025/11/2411 个月前
7.4.02025/11/2411 个月前

关于 @capgo/capacitor-firebase-crashlytics 的常见问题

@capgo/capacitor-firebase-crashlytics 是什么?

Firebase Crashlytics的电容插件.

如何安装 @capgo/capacitor-firebase-crashlytics?

在项目目录运行 npm install @capgo/capacitor-firebase-crashlytics,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@capacitor/core(>=8.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@capgo/capacitor-firebase-crashlytics 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@capgo/capacitor-firebase-crashlytics 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@capgo/capacitor-firebase-crashlytics 可以商用吗?

@capgo/capacitor-firebase-crashlytics 使用 MPL-2.0 许可。弱 Copyleft:可以商用,也可以和闭源代码一起使用;但如果分发时修改了 MPL 授权的文件,这些文件的修改需以 MPL 开源。以上为概括,不构成法律意见,请以许可原文为准。

@capgo/capacitor-firebase-crashlytics 的下载量有多少?

根据 npm 官方下载统计,@capgo/capacitor-firebase-crashlytics 在 2026/10/09 – 2026/11/07 这 30 天内被下载 2,251 次,日均约 75 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@capgo/capacitor-firebase-crashlytics 还在维护吗?

最新版本 8.3.1 发布于 2026/09/14(1 个月前);至今共发布 6 个版本,其中过去 12 个月发布了 6 个;首次发布于 2025/11/24。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。