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-rudderstack`
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/rudderstack/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-rudderstack` 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-rudderstackbunx cap syncImporta
Sezione intitolata “Import”import { nativePlugin } from '@capgo/capacitor-rudderstack';Avvio rapido
Sezione intitolata “Quick start”import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.initialize({ writeKey: 'YOUR_WRITE_KEY', dataPlaneUrl: 'https://your.dataplane.rudderstack.com',});await nativePlugin.identify({ userId: 'user_123', traits: { plan: 'pro' } });await nativePlugin.track({ event: 'Signed Up', properties: { source: 'mobile' } });Esempio: screen tracking
Sezione intitolata “Esempio: screen tracking”await nativePlugin.screen({ screen: 'Checkout', properties: { step: 'payment' },});Errori comuni
Sezione intitolata “Errori comuni”- Inizializza una volta: ripetute
initialize()possono duplicare lo stato di SDK, proteggendolo durante il bootstrap dell'app. - Svuota prima del background: chiamata
flush()quando iOS o Android potrebbero sospendere il processo durante l'upload. - ID pubblicitari: helper per l'opt-in solo se la privacy policy copre la raccolta di IDFA o GAID.
Panoramica API
Sezione intitolata “Panoramica API”initialize
Sezione intitolata “initialize”Inizializza il client RudderStack.
Il metodo mantiene la firma Cordova, quindi il secondo argomento può essere un oggetto config o un oggetto Rudder options.
import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.initialize('write-key-123');identify
Sezione intitolata “identify”Invia una chiamata identify per l'id utente fornito.
import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.identify('user-id-123');Invia una chiamata group per l'id gruppo fornito.
import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.group('group-id-123');Invia una chiamata track per il nome dell'evento fornito.
import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.track('event');Invia una chiamata screen per il nome della schermata fornito.
import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.screen('screen');Crea un alias dell'utente corrente con un nuovo identificatore.
import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.alias('new-id-123');Resetta lo stato corrente dell'identità RudderStack.
import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.reset();Svuota immediatamente gli eventi in coda.
import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.flush();putDeviceToken
Sezione intitolata “putDeviceToken”Imposta il push token che RudderStack inoltra alle destinazioni supportate.
import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.putDeviceToken('device-token-123');setAdvertisingId
Sezione intitolata “setAdvertisingId”Consulta le definizioni nel sorgente per il contratto attuale.
import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.setAdvertisingId('advertising-id-123');putAdvertisingId
Sezione intitolata “putAdvertisingId”Sets a custom advertising id value.
import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.putAdvertisingId('advertising-id-123');setAnonymousId
Sezione intitolata “setAnonymousId”Consulta le definizioni nel sorgente per il contratto attuale.
import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.setAnonymousId('anonymous-id-123');putAnonymousId
Sezione intitolata “putAnonymousId”Sets a custom anonymous id value.
import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.putAnonymousId('anonymous-id-123');Toggles RudderStack tracking opt-out.
import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.optOut(true);Riferimento ai tipi
Sezione: “Type Reference”RudderConfiguration
Sezione intitolata “RudderConfiguration”Chiavi di configurazione supportate per gli SDK nativi di RudderStack sottostanti.
export interface RudderConfiguration { /** * RudderStack data plane URL. */ dataPlaneUrl?: string;
/** * Number of events to batch before a flush. */ flushQueueSize?: number;
/** * Database row threshold that triggers pruning on Android and iOS. */ dbCountThreshold?: number;
/** * Server config refresh interval in hours. */ configRefreshInterval?: number;
/** * RudderStack log verbosity. */ logLevel?: RudderLogLevelValue;
/** * Sleep timeout / sleep count used by the native SDK. */ sleepTimeOut?: number;
/** * Android only. Lets the native SDK collect the advertising identifier automatically. */ autoCollectAdvertId?: boolean;
/** * Tracks `Application Installed`, `Application Updated`, and `Application Opened` automatically. */ trackLifecycleEvents?: boolean;
/** * RudderStack control plane URL. */ controlPlaneUrl?: string;
/** * Enables automatic screen tracking where supported by the native SDK. */ recordScreenViews?: boolean;
/** * Ignored in this Capacitor port. * * The Cordova SDK uses this field to bootstrap native destination factories from companion plugins. * Those extension packages are not implemented in this first Capacitor release. */ factories?: any[];}RudderOptions
Sezione intitolata “RudderOptions”Opzioni di RudderStack per singola chiamata.
export interface RudderOptions { /** * External identifiers forwarded with the event. */ externalIds?: Record<string, string>;
/** * Destination enablement flags keyed by integration name. */ integrations?: Record<string, boolean>;}RudderTraits
Sezione: “RudderTraits”Payload Traits accettato da identify e group.
export type RudderTraits = Record<string, any>;RudderProperties
Sezione: “RudderProperties”Payload Properties accettato da track e screen.
export type RudderProperties = Record<string, any>;PluginVersionResult
Sezione: “PluginVersionResult”Payload della versione del plugin.
export interface PluginVersionResult { /** * Version identifier returned by the platform implementation. */ version: string;}RudderLogLevelValue
Sezione intitolata “RudderLogLevelValue”Valori del log level di RudderStack esposti per facilitare la migrazione.
export type RudderLogLevelValue = 0 | 1 | 2 | 3 | 4 | 5;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 Utilizzo di @capgo/capacitor-rudderstack per la funzionalità nativa in Utilizzo di @capgo/capacitor-rudderstack, 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 in Chiavi API, e Dispositivi per i dettagli di implementazione in Dispositivi.