본문 바로가기

시작하기

GitHub

AI-Assisted Setup으로 플러그인을 설치할 수 있습니다. 다음 명령어로 AI 도구에 Capgo 스킬을 추가하세요:

터미널 창
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

그런 다음 아래 프롬프트를 사용하세요:

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-crashlytics
npx cap sync
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.crash({ message: 'Hello from Capacitor' });
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.setCustomKey({
key: 'key-123',
value: 'value',
type: 'string',
});
import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.setUserId({ userId: 'user-id-123' });

자주 하는 실수

“흔한 실수” 섹션
  • 네이티브 동기화: 실행 npx cap sync 플러그인 업그레이드 후.
  • 신뢰할 수 있는 소스: 신뢰 src/definitions.ts GitHub 레포지토리에서.

구현을 테스트하기 위해 크래시를 강제합니다.

Android 및 iOS에서만 사용할 수 있습니다.

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.crash({ message: 'Hello from Capacitor' });

이후의 치명적 및 비치명적 리포트에 연결되는 사용자 지정 키와 값을 설정합니다.

Android 및 iOS에서만 사용할 수 있습니다.

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.setCustomKey({
key: 'key-123',
value: 'value',
type: 'string',
});

이후 발생하는 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' });

자동 데이터 수집을 활성화하거나 비활성화합니다. 설정값은 앱을 다시 실행해야 적용됩니다.

Android 및 iOS에서만 사용할 수 있습니다.

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.setEnabled({ enabled: true });

자동 데이터 수집 활성화 여부를 반환합니다.

iOS에서만 사용할 수 있습니다.

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
const result = await FirebaseCrashlytics.isEnabled();
console.log(result);

didCrashOnPreviousExecution

“didCrashOnPreviousExecution” 섹션

이전 실행 중에 앱이 충돌했는지 여부를 반환합니다.

Android 및 iOS에서만 사용할 수 있습니다.

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
const result = await FirebaseCrashlytics.didCrashOnPreviousExecution();
console.log(result);

다음 앱 실행 시 전송되지 않은 리포트를 모두 Crashlytics로 업로드합니다.

자동 데이터 수집이 활성화되면 Crashlytics가 시작 시 보고서를 자동으로 업로드합니다.

Android 및 iOS에서만 사용할 수 있습니다.

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.sendUnsentReports();

기기에 있는 전송되지 않은 리포트를 모두 삭제합니다.

Android 및 iOS에서만 사용할 수 있습니다.

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.deleteUnsentReports();

Crashlytics로 전송할 비치명적(non-fatal) 리포트를 기록합니다.

Android 및 iOS에서만 사용할 수 있습니다.

import { FirebaseCrashlytics } from '@capgo/capacitor-firebase-crashlytics';
await FirebaseCrashlytics.recordException({ message: 'Hello from Capacitor' });

타입 레퍼런스

“타입 참조” 섹션
export interface CrashOptions {
/**
* @since 0.1.0
*/
message: string;
}
export type SetCustomKeyOptions = CustomKeyAndValue;
export interface SetUserIdOptions {
/**
* @since 0.1.0
*/
userId: string;
}
export interface LogOptions {
/**
* @since 0.1.0
*/
message: string;
}
export interface SetEnabledOptions {
/**
* @since 0.1.0
*/
enabled: boolean;
}
export interface IsEnabledResult {
/**
* @since 0.1.0
*/
enabled: boolean;
}

DidCrashOnPreviousExecutionResult

“DidCrashOnPreviousExecutionResult” 섹션
export interface DidCrashOnPreviousExecutionResult {
/**
* @since 0.1.0
*/
crashed: boolean;
}
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[];
}
export interface GetPluginVersionResult {
/**
* The semantic version of this plugin.
*
* @since 8.0.2
*/
version: string;
}
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';
}

stacktrace.js에서 생성된 Stacktrace의 하위 집합입니다.

export interface StackFrame {
lineNumber?: number;
fileName?: string;
functionName?: string;
}

이 페이지는 플러그인의 src/definitions.tsupstream에서 public API가 변경되면 sync를 다시 실행하세요.

사용 중이라면 시작하기 대시보드 및 API 운영을 계획하려면, 이를 다음과 연결하세요 API 개요 구현 세부 사항은 API 개요에서 소개 구현 세부 사항은 소개에서 API 키 구현 세부 사항은 API 키에서 기기 구현 세부 사항은 기기에서, 그리고 번들 Bundles의 구현 세부 사항은