快速入门
复制包含安装步骤和该插件完整 Markdown 指南的配置 prompt。
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-firebase-crashlytics`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/firebase-crashlytics/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
安装
“安装”章节你可以使用我们的 AI 辅助设置来安装插件。使用以下命令将 Capgo skills 添加到你的 AI 工具中:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins然后使用以下 prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-firebase-crashlytics` plugin in my project.如果你更想手动设置,请运行以下命令安装插件,并按照下方各平台的说明操作:
bun add @capgo/capacitor-firebase-crashlyticsnpx cap sync导入
“导入”章节import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';快速入门
章节标题为“快速入门”import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.crash({ message: 'Hello from Capacitor' });示例:setCustomKey
标题为“示例:setCustomKey”的章节import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.setCustomKey({ key: 'key-123', value: 'value', type: 'string',});示例:setUserId
标题为“示例:setUserId”的章节import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.setUserId({ userId: 'user-id-123' });常见坑点
章节标题为“常见陷阱”- 原生同步:运行
npx cap sync在插件升级后。 - 唯一可信来源:信任
src/definitions.ts在 GitHub 仓库中。
API 概览
章节标题:“API 概览”crash
标题为“crash”的章节强制触发崩溃以测试实现效果。
仅适用于 Android 和 iOS。
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.crash({ message: 'Hello from Capacitor' });setCustomKey
标题为“setCustomKey”的章节设置与后续 fatal 和 non-fatal 报告关联的自定义键值对。
仅适用于 Android 和 iOS。
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.setCustomKey({ key: 'key-123', value: 'value', type: 'string',});setUserId
标题为 “setUserId” 的章节设置与后续 fatal 和 non-fatal 报告关联的用户 ID(标识符)。
仅适用于 Android 和 iOS。
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.setUserId({ userId: 'user-id-123' });添加自定义日志消息并随崩溃数据一同发送,以便为崩溃前的事件提供更多上下文信息。
仅适用于 Android 和 iOS。
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.log({ message: 'Hello from Capacitor' });setEnabled
标题为“setEnabled”的章节启用/禁用自动数据收集。 该值在下次启动应用时生效。
仅适用于 Android 和 iOS。
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.setEnabled({ enabled: true });isEnabled
“isEnabled” 章节返回是否已启用自动数据收集。
仅适用于 iOS。
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
const result = await FirebaseCrashlytics.isEnabled();console.log(result);didCrashOnPreviousExecution
标题为 “didCrashOnPreviousExecution” 的章节返回 App 在上次运行时是否发生过崩溃。
仅适用于 Android 和 iOS。
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
const result = await FirebaseCrashlytics.didCrashOnPreviousExecution();console.log(result);sendUnsentReports
“sendUnsentReports” 部分在下次启动时将所有未发送的报告上传至 Crashlytics。
启用自动数据收集后,Crashlytics 会在启动时自动上传报告。
仅适用于 Android 和 iOS。
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.sendUnsentReports();deleteUnsentReports
“deleteUnsentReports” 部分删除设备上所有未发送的报告。
仅适用于 Android 和 iOS。
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.deleteUnsentReports();recordException
“recordException” 部分记录一条非致命报告,以便发送到 Crashlytics。
仅适用于 Android 和 iOS。
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.recordException({ message: 'Hello from Capacitor' });类型参考
“类型参考” 章节CrashOptions
“CrashOptions” 部分export interface CrashOptions { /** * @since 0.1.0 */ message: string;}SetCustomKeyOptions
“SetCustomKeyOptions” 部分export type SetCustomKeyOptions = CustomKeyAndValue;SetUserIdOptions
标题为“SetUserIdOptions”的章节export interface SetUserIdOptions { /** * @since 0.1.0 */ userId: string;}LogOptions
“LogOptions” 部分export interface LogOptions { /** * @since 0.1.0 */ message: string;}SetEnabledOptions
“SetEnabledOptions” 部分export interface SetEnabledOptions { /** * @since 0.1.0 */ enabled: boolean;}IsEnabledResult
“IsEnabledResult” 章节export interface IsEnabledResult { /** * @since 0.1.0 */ enabled: boolean;}DidCrashOnPreviousExecutionResult
标题为“DidCrashOnPreviousExecutionResult”的部分export interface DidCrashOnPreviousExecutionResult { /** * @since 0.1.0 */ crashed: boolean;}RecordExceptionOptions
标题为“RecordExceptionOptions”的部分export interface RecordExceptionOptions { /** * The message to record as a non-fatal exception. * * @since 0.1.0 */ message: string; /** * Error code within a specific error domain. * * **Attention:** This option is ignored on iOS if `stacktrace` is provided. * * Only available for iOS. * * @since 0.1.0 */ code?: number; /** * A string containing the error domain. * * **Attention:** This option is ignored on iOS if `stacktrace` is provided. * * Only available for iOS. * * @since 0.1.0 */ domain?: string; /** * An array of keys and the values to associate with the non fatal exception, * in addition to the app level custom keys. * * **Attention:** This option is ignored on iOS if `stacktrace` is provided. * * @since 7.1.0 */ keysAndValues?: CustomKeyAndValue[]; /** * A stacktrace generated by stacktrace.js. * * @since 1.1.0 */ stacktrace?: StackFrame[];}GetPluginVersionResult
“GetPluginVersionResult” 章节export interface GetPluginVersionResult { /** * The semantic version of this plugin. * * @since 8.0.2 */ version: string;}CustomKeyAndValue
标题为“CustomKeyAndValue”的部分export interface CustomKeyAndValue { /** * @since 7.1.0 */ key: string; /** * @since 7.1.0 */ value: string | number | boolean; /** * @since 7.1.0 */ type: 'string' | 'long' | 'double' | 'boolean' | 'int' | 'float';}StackFrame
标题为“StackFrame”的部分由 stacktrace.js 生成的堆栈跟踪子集。
export interface StackFrame { lineNumber?: number; fileName?: string; functionName?: string;}单一事实来源
标题为“单一事实来源”的部分本页面由插件的 src/definitions.ts生成。当上游的公共 API 发生变化时,请重新运行 sync。
从入门指南继续
“从入门指南继续”章节如果你正在使用 快速入门 要规划 dashboard 和 API 操作,请将其连接到 API 概览 关于 API Overview 中的实现细节, 简介 关于 Introduction 中的实现细节, API 密钥 有关 API Keys 的实现细节, 设备 有关 Devices 的实现细节,以及 Bundle 有关 Bundles 中的实现细节。