Per iniziare
Copia un prompt di configurazione con i passaggi di installazione e la guida markdown completa per questo 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-analytics`
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-analytics/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.
Puoi usare il nostro setup assistito dall'IA per installare il plugin. Aggiungi le skill Capgo al tuo strumento di IA usando il seguente comando:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsPoi usa il seguente prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-firebase-analytics` plugin in my project.Se preferisci la configurazione manuale, installa il plugin eseguendo questi comandi e segui le istruzioni specifiche per piattaforma qui sotto:
bun add @capgo/capacitor-firebase-analyticsnpx cap syncImporta
Sezione intitolata “Import”import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';Avvio rapido
Sezione intitolata “Quick start”import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
const result = await FirebaseAnalytics.getAppInstanceId();console.log(result);Esempio: getSessionId
Sezione intitolata “Esempio: getSessionId”import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
const result = await FirebaseAnalytics.getSessionId();console.log(result);Esempio: setConsent
Sezione intitolata “Esempio: setConsent”import { FirebaseAnalytics, ConsentStatus, ConsentType } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setConsent({ type: ConsentType.AdPersonalization, status: ConsentStatus.Granted,});Errori comuni
Sezione intitolata “Errori comuni”- Sync nativo: esegui
npx cap syncdopo gli aggiornamenti dei plugin. - Fonte di verità: fidati
src/definitions.tsnel repo GitHub.
Panoramica API
Sezione intitolata “Panoramica API”getAppInstanceId
Sezione intitolata “getAppInstanceId”Recupera l'ID dell'istanza dell'app.
Disponibile solo per Android e iOS.
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
const result = await FirebaseAnalytics.getAppInstanceId();console.log(result);getSessionId
Sezione intitolata “getSessionId”Recupera l'ID della sessione corrente (ga_session_id).
Disponibile solo per Android e iOS.
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
const result = await FirebaseAnalytics.getSessionId();console.log(result);setConsent
Sezione: “setConsent”Imposta la modalità di consenso dell'utente.
import { FirebaseAnalytics, ConsentStatus, ConsentType } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setConsent({ type: ConsentType.AdPersonalization, status: ConsentStatus.Granted,});setUserId
Sezione: “setUserId”Imposta la proprietà dell'ID utente.
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setUserId({ userId: 'user-id-123' });setUserProperty
Sezione: “setUserProperty”Imposta una proprietà utente personalizzata su un valore specifico.
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setUserProperty({ key: 'key-123', value: 'value',});setCurrentScreen
Sezione: “setCurrentScreen”Imposta il nome della schermata corrente.
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setCurrentScreen({ screenName: 'screen' });logEvent
Sezione intitolata “logEvent”Registra un evento dell'app.
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.logEvent({ name: 'example' });setSessionTimeoutDuration
Sezione intitolata “setSessionTimeoutDuration”Imposta la durata di inattività che termina la sessione corrente.
Disponibile solo per Android e iOS.
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setSessionTimeoutDuration({ duration: 1800 });setEnabled
Sezione intitolata “setEnabled”Abilita/disabilita la raccolta automatica dei dati. Il valore non ha effetto fino al prossimo avvio dell'app.
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.setEnabled({ enabled: true });isEnabled
Sezione intitolata “isEnabled”Restituisce se la raccolta automatica dei dati è abilitata o meno.
Disponibile solo per il Web.
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
const result = await FirebaseAnalytics.isEnabled();console.log(result);resetAnalyticsData
Sezione intitolata “resetAnalyticsData”Cancella tutti i dati analytics di questa app dal dispositivo. Reimposta l'ID dell'istanza dell'app.
Disponibile solo per Android e iOS.
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.resetAnalyticsData();initiateOnDeviceConversionMeasurementWithEmailAddress
Sezione intitolata “initiateOnDeviceConversionMeasurementWithEmailAddress”Avvia la misurazione delle conversioni on-device con un indirizzo email.
Disponibile solo per iOS.
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.initiateOnDeviceConversionMeasurementWithEmailAddress({ emailAddress: 'user@example.com' });initiateOnDeviceConversionMeasurementWithPhoneNumber
Sezione intitolata “initiateOnDeviceConversionMeasurementWithPhoneNumber”Avvia la misurazione delle conversioni on-device tramite numero di telefono.
Disponibile solo per iOS.
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.initiateOnDeviceConversionMeasurementWithPhoneNumber({ phoneNumber: '+15555550123' });initiateOnDeviceConversionMeasurementWithHashedEmailAddress
Sezione intitolata “initiateOnDeviceConversionMeasurementWithHashedEmailAddress”Avvia la misurazione delle conversioni on-device tramite indirizzo email con hash.
Disponibile solo per iOS.
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.initiateOnDeviceConversionMeasurementWithHashedEmailAddress({ emailAddressToHash: 'user@example.com' });initiateOnDeviceConversionMeasurementWithHashedPhoneNumber
Sezione intitolata “initiateOnDeviceConversionMeasurementWithHashedPhoneNumber”Avvia la misurazione delle conversioni on-device tramite numero di telefono con hash.
Disponibile solo per iOS.
import { FirebaseAnalytics } from '@capgo/capacitor-firebase-analytics';
await FirebaseAnalytics.initiateOnDeviceConversionMeasurementWithHashedPhoneNumber({ phoneNumberToHash: '+15555550123' });Riferimento ai tipi
Sezione: “Type Reference”GetAppInstanceIdResult
Sezione intitolata “GetAppInstanceIdResult”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;}GetSessionIdResult
Sezione intitolata “GetSessionIdResult”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;}SetConsentOptions
Sezione intitolata “SetConsentOptions”export interface SetConsentOptions { /** * The consent type. * * @since 6.0.0 */ type: ConsentType; /** * The consent status. * * @since 6.0.0 */ status: ConsentStatus;}SetUserIdOptions
Sezione intitolata “SetUserIdOptions”export interface SetUserIdOptions { /** * @since 0.1.0 */ userId: string | null;}SetUserPropertyOptions
Sezione intitolata “SetUserPropertyOptions”export interface SetUserPropertyOptions { /** * @since 0.1.0 */ key: string; /** * @since 0.1.0 */ value: string | null;}SetCurrentScreenOptions
Sezione intitolata “SetCurrentScreenOptions”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;}LogEventOptions
Sezione intitolata “LogEventOptions”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
Sezione intitolata “SetSessionTimeoutDurationOptions”export interface SetSessionTimeoutDurationOptions { /** * Duration in seconds. * * @default 1800 * @since 0.1.0 */ duration: number;}SetEnabledOptions
Sezione intitolata “SetEnabledOptions”export interface SetEnabledOptions { /** * @since 0.1.0 */ enabled: boolean;}IsEnabledResult
Sezione intitolata “IsEnabledResult”export interface IsEnabledResult { /** * @since 0.1.0 */ enabled: boolean;}InitiateOnDeviceConversionMeasurementWithEmailAddressOptions
Sezione intitolata “InitiateOnDeviceConversionMeasurementWithEmailAddressOptions”export interface InitiateOnDeviceConversionMeasurementWithEmailAddressOptions { /** * The email address to initiate on-device conversion measurement with. * * @since 7.2.0 */ emailAddress: string;}InitiateOnDeviceConversionMeasurementWithPhoneNumberOptions
Sezione intitolata “InitiateOnDeviceConversionMeasurementWithPhoneNumberOptions”export interface InitiateOnDeviceConversionMeasurementWithPhoneNumberOptions { /** * The phone number to initiate on-device conversion measurement with. * * @since 7.2.0 */ phoneNumber: string;}Fonte di verità
Sezione intitolata “Fonte di verità”Questa pagina è generata dal src/definitions.ts. Riesegui la sync quando il API pubblico cambia upstream.
Continua da Getting Started
Sezione intitolata “Continua da Getting Started”Se stai usando Per iniziare per pianificare le operazioni della dashboard e di API, collegalo a Panoramica API per i dettagli di implementazione in Panoramica di API, Introduzione per i dettagli di implementazione in Introduzione, Chiavi API per i dettagli di implementazione delle chiavi API, Dispositivi per i dettagli di implementazione in Devices, e Bundle per il dettaglio di implementazione in Bundles.