Saltar al contenido

Primeros pasos

GitHub

Puedes usar nuestro setup asistido por IA para instalar el plugin. Añade las skills de Capgo a tu herramienta de IA con el siguiente comando:

Ventana de terminal
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Luego usa el siguiente prompt:

Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-firebase-analytics` plugin in my project.

Si prefieres la configuración manual, instala el plugin ejecutando estos comandos y sigue las instrucciones de cada plataforma:

Ventana de terminal
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,
});
  • Sync nativo: ejecuta npx cap sync tras actualizar los plugins.
  • Fuente de verdad: confianza src/definitions.ts en el repo de GitHub.

Obtiene el ID de la instancia de la app.

Solo disponible para Android e iOS.

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

Obtiene el ID de la sesión actual (ga_session_id).

Solo disponible para Android e iOS.

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

Establece el modo de consentimiento del usuario.

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

Establece la propiedad del ID de usuario.

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

Asigna un valor a una propiedad de usuario personalizada.

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

Establece el nombre de la pantalla actual.

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

Registra un evento de la app.

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

Establece la duración de inactividad que finaliza la sesión actual.

Solo disponible para Android e iOS.

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

Activa/desactiva la recopilación automática de datos. El valor no se aplica hasta la próxima ejecución de la app.

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

Indica si la recopilación automática de datos está activada.

Solo disponible para Web.

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

Borra todos los datos de analytics de esta app en el dispositivo. Reinicia el app instance id.

Solo disponible para Android e iOS.

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

initiateOnDeviceConversionMeasurementWithEmailAddress

Sección titulada “initiateOnDeviceConversionMeasurementWithEmailAddress”

Inicia la medición de conversiones en el dispositivo con un email.

Solo disponible para iOS.

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

initiateOnDeviceConversionMeasurementWithPhoneNumber

Sección titulada “initiateOnDeviceConversionMeasurementWithPhoneNumber”

Inicia la medición de conversiones on-device con un número de teléfono.

Solo disponible para iOS.

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

initiateOnDeviceConversionMeasurementWithHashedEmailAddress

Sección titulada “initiateOnDeviceConversionMeasurementWithHashedEmailAddress”

Inicia la medición de conversiones on-device con un email hasheado.

Solo disponible para iOS.

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

initiateOnDeviceConversionMeasurementWithHashedPhoneNumber

Sección titulada “initiateOnDeviceConversionMeasurementWithHashedPhoneNumber”

Inicia la medición de conversiones on-device con un número de teléfono hasheado.

Solo disponible para 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 };
}
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

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

InitiateOnDeviceConversionMeasurementWithPhoneNumberOptions

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

Esta página se genera a partir del plugin src/definitions.ts. Vuelve a ejecutar el sync cuando el API público cambie en upstream.

Si estás usando Primeros pasos para planificar las operaciones del dashboard y de API, conéctalo con Resumen de API para los detalles de implementación en API Overview, Introducción para los detalles de implementación en la Introducción, Claves de API para el detalle de implementación en API Keys, Dispositivos para el detalle de implementación en Devices, y Bundles para el detalle de implementación en Bundles.