Erste Schritte
Kopiere einen Setup-Prompt mit den Installationsschritten und dem vollständigen Markdown-Guide für dieses Plugin.
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.
Installieren
Abschnitt „Installation“Du kannst unser KI-gestütztes Setup nutzen, um das Plugin zu installieren. Füge die Capgo Skills mit dem folgenden Befehl deinem KI-Tool hinzu:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsNutze dann diesen Prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-firebase-crashlytics` plugin in my project.Wenn du ein manuelles Setup bevorzugst, installiere das Plugin mit den folgenden Befehlen und befolge die plattformspezifischen Anweisungen unten:
bun add @capgo/capacitor-firebase-crashlyticsnpx cap syncImportieren
Abschnitt mit dem Titel „Import“import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';Quickstart
Abschnitt „Quick start“import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.crash({ message: 'Hello from Capacitor' });Beispiel: setCustomKey
Abschnitt mit dem Titel „Beispiel: setCustomKey“import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.setCustomKey({ key: 'key-123', value: 'value', type: 'string',});Beispiel: setUserId
Abschnitt mit dem Titel „Beispiel: setUserId“import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.setUserId({ userId: 'user-id-123' });Häufige Stolperfallen
Abschnitt „Häufige Fallstricke“- Nativer Sync: ausführen
npx cap syncnach Plugin-Upgrades. - Single Source of Truth: Vertrauen
src/definitions.tsim GitHub Repo.
API Übersicht
Abschnitt „API Übersicht“Erzwingt einen Crash, um die Implementierung zu testen.
Nur für Android und iOS verfügbar.
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.crash({ message: 'Hello from Capacitor' });setCustomKey
Abschnitt mit dem Titel „setCustomKey“Setzt ein benutzerdefiniertes Key-Value-Paar, das mit nachfolgenden fatalen und nicht-fatalen Reports verknüpft wird.
Nur für Android und iOS verfügbar.
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.setCustomKey({ key: 'key-123', value: 'value', type: 'string',});setUserId
Abschnitt mit dem Titel „setUserId“Setzt eine User-ID (Bezeichner), die mit nachfolgenden fatalen und nicht-fatalen Reports verknüpft wird.
Nur für Android und iOS verfügbar.
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.setUserId({ userId: 'user-id-123' });Fügt eine benutzerdefinierte Log-Nachricht hinzu, die mit deinen Crash-Daten gesendet wird, damit du mehr Kontext zu den Ereignissen hast, die zu einem Crash geführt haben.
Nur für Android und iOS verfügbar.
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.log({ message: 'Hello from Capacitor' });setEnabled
Abschnitt mit dem Titel „setEnabled“Aktiviert/deaktiviert die automatische Datenerfassung. Der Wert wird erst beim nächsten Start der App wirksam.
Nur für Android und iOS verfügbar.
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.setEnabled({ enabled: true });isEnabled
Abschnitt „isEnabled“Gibt zurück, ob die automatische Datenerfassung aktiviert ist oder nicht.
Nur für iOS verfügbar.
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
const result = await FirebaseCrashlytics.isEnabled();console.log(result);didCrashOnPreviousExecution
Abschnitt mit dem Titel „didCrashOnPreviousExecution“Gibt an, ob die App beim letzten Lauf abgestürzt ist.
Nur für Android und iOS verfügbar.
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
const result = await FirebaseCrashlytics.didCrashOnPreviousExecution();console.log(result);sendUnsentReports
Abschnitt „sendUnsentReports“Lädt beim nächsten Start alle nicht gesendeten Berichte an Crashlytics hoch.
Wenn die automatische Datenerfassung aktiviert ist, lädt Crashlytics Berichte beim Start automatisch hoch.
Nur für Android und iOS verfügbar.
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.sendUnsentReports();deleteUnsentReports
Abschnitt mit dem Titel „deleteUnsentReports“Löscht alle nicht gesendeten Berichte auf dem Gerät.
Nur für Android und iOS verfügbar.
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.deleteUnsentReports();recordException
Abschnitt mit dem Titel „recordException“Erfasst einen Non-Fatal-Bericht zum Senden an Crashlytics.
Nur für Android und iOS verfügbar.
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.recordException({ message: 'Hello from Capacitor' });Typreferenz
Abschnitt mit dem Titel „Typreferenz“CrashOptions
Abschnitt mit dem Titel „CrashOptions“export interface CrashOptions { /** * @since 0.1.0 */ message: string;}SetCustomKeyOptions
Abschnitt mit dem Titel „SetCustomKeyOptions“export type SetCustomKeyOptions = CustomKeyAndValue;SetUserIdOptions
Abschnitt mit dem Titel „SetUserIdOptions“export interface SetUserIdOptions { /** * @since 0.1.0 */ userId: string;}LogOptions
Abschnitt mit dem Titel „LogOptions“export interface LogOptions { /** * @since 0.1.0 */ message: string;}SetEnabledOptions
Abschnitt „SetEnabledOptions“export interface SetEnabledOptions { /** * @since 0.1.0 */ enabled: boolean;}IsEnabledResult
Abschnitt „IsEnabledResult“export interface IsEnabledResult { /** * @since 0.1.0 */ enabled: boolean;}DidCrashOnPreviousExecutionResult
Abschnitt „DidCrashOnPreviousExecutionResult“export interface DidCrashOnPreviousExecutionResult { /** * @since 0.1.0 */ crashed: boolean;}RecordExceptionOptions
Abschnitt „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
Abschnitt mit dem Titel „GetPluginVersionResult“export interface GetPluginVersionResult { /** * The semantic version of this plugin. * * @since 8.0.2 */ version: string;}CustomKeyAndValue
Abschnitt „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
Abschnitt „StackFrame“Teilmenge des von stacktrace.js generierten Stacktrace.
export interface StackFrame { lineNumber?: number; fileName?: string; functionName?: string;}Source of Truth
Abschnitt mit dem Titel „Source of Truth“Diese Seite wird aus dem Plugin generiert src/definitions.ts. Führe den Sync erneut aus, wenn sich das öffentliche API upstream ändert.
Weiter geht's nach Getting Started
Abschnitt: „Weiter geht’s mit Getting Started“Wenn du es nutzt Erste Schritte um Dashboard- und API-Operationen zu planen, verbinde es mit API Übersicht für Details zur Implementierung im API Overview, Einführung für die Implementierungsdetails in der Einleitung, API Schlüssel für die Implementierungsdetails in API Keys, Geräte für die Implementierungsdetails in Devices und Bundles für die Implementierungsdetails in Bundles.