본문 바로가기

시작하기

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-analytics` plugin in my project.

수동 설정을 선호한다면, 다음 명령어를 실행하여 플러그인을 설치하고 아래의 플랫폼별 지침을 따르세요:

터미널 창
bun add @capgo/capacitor-firebase-analytics
npx cap sync
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
const result = await FirebaseAnalytics.getAppInstanceId();
console.log(result);
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
const result = await FirebaseAnalytics.getSessionId();
console.log(result);
import { FirebaseAnalytics, ConsentStatus, ConsentType } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setConsent({
type: ConsentType.AdPersonalization,
status: ConsentStatus.Granted,
});

자주 하는 실수

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

앱 인스턴스 ID를 가져옵니다.

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

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
const result = await FirebaseAnalytics.getAppInstanceId();
console.log(result);

현재 세션 ID를 가져옵니다 (ga_session_id).

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

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
const result = await FirebaseAnalytics.getSessionId();
console.log(result);

사용자의 동의 모드를 설정합니다.

import { FirebaseAnalytics, ConsentStatus, ConsentType } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setConsent({
type: ConsentType.AdPersonalization,
status: ConsentStatus.Granted,
});

사용자 ID 속성을 설정합니다.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setUserId({ userId: 'user-id-123' });

커스텀 사용자 속성을 지정된 값으로 설정합니다.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setUserProperty({
key: 'key-123',
value: 'value',
});

현재 화면 이름을 설정합니다.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setCurrentScreen({ screenName: 'screen' });

앱 이벤트를 기록합니다.

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.logEvent({ name: 'example' });

현재 세션을 종료하는 비활성 기간을 설정합니다.

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

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setSessionTimeoutDuration({ duration: 1800 });

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

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

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

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

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

이 앱의 모든 분석 데이터를 기기에서 삭제합니다. 앱 인스턴스 ID를 초기화합니다.

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

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.resetAnalyticsData();

initiateOnDeviceConversionMeasurementWithEmailAddress

“initiateOnDeviceConversionMeasurementWithEmailAddress” 섹션

이메일 주소를 사용하여 기기 내 전환 측정을 시작합니다.

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

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.initiateOnDeviceConversionMeasurementWithEmailAddress({ emailAddress: 'user@example.com' });

initiateOnDeviceConversionMeasurementWithPhoneNumber

“initiateOnDeviceConversionMeasurementWithPhoneNumber” 섹션

전화번호를 사용하여 기기 내 전환 측정을 시작합니다.

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

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.initiateOnDeviceConversionMeasurementWithPhoneNumber({ phoneNumber: '+15555550123' });

initiateOnDeviceConversionMeasurementWithHashedEmailAddress

“initiateOnDeviceConversionMeasurementWithHashedEmailAddress” 섹션

해시된 이메일 주소를 사용하여 기기 내 전환 측정을 시작합니다.

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

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.initiateOnDeviceConversionMeasurementWithHashedEmailAddress({ emailAddressToHash: 'user@example.com' });

initiateOnDeviceConversionMeasurementWithHashedPhoneNumber

“initiateOnDeviceConversionMeasurementWithHashedPhoneNumber” 섹션

해시된 전화번호를 사용하여 기기 내 전환 측정을 시작합니다.

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

import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.initiateOnDeviceConversionMeasurementWithHashedPhoneNumber({ phoneNumberToHash: '+15555550123' });

타입 레퍼런스

“타입 참조” 섹션
export interface GetAppInstanceIdResult {
/**
* The app instance id.
*
* Not defined if `FirebaseAnalytics.ConsentType.ANALYTICS_STORAGE` has been set to `FirebaseAnalytics.ConsentStatus.DENIED`.
*
* @since 1.4.0
*/
appInstanceId?: string;
}
export interface GetSessionIdResult {
/**
* The current session id.
*
* Matches Firebase Analytics `ga_session_id`.
*
* Not defined if `FirebaseAnalytics.ConsentType.ANALYTICS_STORAGE` has been set to `FirebaseAnalytics.ConsentStatus.DENIED`.
*
* @since 8.0.1
*/
sessionId?: number;
}
export interface SetConsentOptions {
/**
* The consent type.
*
* @since 6.0.0
*/
type: ConsentType;
/**
* The consent status.
*
* @since 6.0.0
*/
status: ConsentStatus;
}
export interface SetUserIdOptions {
/**
* @since 0.1.0
*/
userId: string | null;
}
export interface SetUserPropertyOptions {
/**
* @since 0.1.0
*/
key: string;
/**
* @since 0.1.0
*/
value: string | null;
}
export interface SetCurrentScreenOptions {
/**
* @since 0.1.0
*/
screenName: string | null;
/**
* Only available for Android and iOS.
*
* @default null
* @since 0.1.0
*/
screenClassOverride?: string | null;
}
export interface LogEventOptions {
/**
* The event name.
*
* @since 0.1.0
*/
name: string;
/**
* The optional event params.
*
* @since 0.1.0
*/
params?: { [key: string]: any };
}

SetSessionTimeoutDurationOptions

“SetSessionTimeoutDurationOptions” 섹션
export interface SetSessionTimeoutDurationOptions {
/**
* Duration in seconds.
*
* @default 1800
* @since 0.1.0
*/
duration: number;
}
export interface SetEnabledOptions {
/**
* @since 0.1.0
*/
enabled: boolean;
}
export interface IsEnabledResult {
/**
* @since 0.1.0
*/
enabled: boolean;
}

InitiateOnDeviceConversionMeasurementWithEmailAddressOptions

“InitiateOnDeviceConversionMeasurementWithEmailAddressOptions” 섹션
export interface InitiateOnDeviceConversionMeasurementWithEmailAddressOptions {
/**
* The email address to initiate on-device conversion measurement with.
*
* @since 7.2.0
*/
emailAddress: string;
}

InitiateOnDeviceConversionMeasurementWithPhoneNumberOptions

“InitiateOnDeviceConversionMeasurementWithPhoneNumberOptions” 섹션
export interface InitiateOnDeviceConversionMeasurementWithPhoneNumberOptions {
/**
* The phone number to initiate on-device conversion measurement with.
*
* @since 7.2.0
*/
phoneNumber: string;
}

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

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