Langsung ke konten

Panduan Memulai

GitHub

Anda bisa menggunakan AI-Assisted Setup kami untuk menginstal plugin ini. Tambahkan skill Capgo ke tool AI Anda dengan command berikut:

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

Lalu gunakan prompt berikut:

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

Jika Anda lebih memilih Manual Setup, instal plugin dengan menjalankan perintah berikut dan ikuti petunjuk khusus platform di bawah ini:

Jendela terminal
bun add @capgo/capacitor-rudderstack
bunx cap sync
import { nativePlugin } from '@capgo/capacitor-rudderstack';
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' } });
await nativePlugin.screen({
screen: 'Checkout',
properties: { step: 'payment' },
});
  • Inisialisasi sekali saja: berulang initialize() pemanggilan dapat menduplikasi state SDK, batasi di balik bootstrap aplikasi Anda.
  • Flush sebelum background: panggil flush() saat iOS atau Android mungkin menangguhkan proses Anda di tengah upload.
  • Advertising IDs: helper opt-in hanya jika kebijakan privasi Anda mencakup pengumpulan IDFA atau GAID.

Menginisialisasi client RudderStack.

Metode ini mempertahankan signature Cordova, sehingga argumen kedua bisa berupa objek config atau objek opsi Rudder.

import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.initialize('write-key-123');

Mengirim panggilan identify untuk user id yang diberikan.

import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.identify('user-id-123');

Mengirim panggilan group untuk group id yang diberikan.

import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.group('group-id-123');

Mengirim panggilan track untuk nama event yang diberikan.

import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.track('event');

Mengirim panggilan screen untuk nama screen yang diberikan.

import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.screen('screen');

Membuat alias user saat ini ke identifier baru.

import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.alias('new-id-123');

Me-reset status identitas RudderStack saat ini.

import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.reset();

Langsung melakukan flush pada event yang mengantre.

import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.flush();

Mengatur push token yang akan diteruskan RudderStack ke destinasi yang didukung.

import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.putDeviceToken('device-token-123');

Lihat definisi sumber untuk kontrak saat ini.

import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.setAdvertisingId('advertising-id-123');

Mengatur nilai custom advertising id.

import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.putAdvertisingId('advertising-id-123');

Lihat definisi sumber untuk kontrak saat ini.

import { nativePlugin } from '@capgo/capacitor-rudderstack';
await nativePlugin.setAnonymousId('anonymous-id-123');

Mengatur nilai anonymous id kustom.

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);

Key konfigurasi yang didukung untuk SDK native RudderStack.

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[];
}

Opsi per-call RudderStack.

export interface RudderOptions {
/**
* External identifiers forwarded with the event.
*/
externalIds?: Record<string, string>;
/**
* Destination enablement flags keyed by integration name.
*/
integrations?: Record<string, boolean>;
}

Payload Traits yang diterima oleh identify dan group.

export type RudderTraits = Record<string, any>;

Payload Properties yang diterima oleh track dan screen.

export type RudderProperties = Record<string, any>;

Payload versi plugin.

export interface PluginVersionResult {
/**
* Version identifier returned by the platform implementation.
*/
version: string;
}

Nilai log level RudderStack yang disediakan untuk kemudahan migrasi.

export type RudderLogLevelValue = 0 | 1 | 2 | 3 | 4 | 5;

Halaman ini dibuat dari plugin src/definitions.ts. Jalankan ulang sync saat API publik berubah di upstream.

Jika Anda menggunakan Panduan Memulai untuk merencanakan operasi dashboard dan API, hubungkan dengan Menggunakan @capgo/capacitor-rudderstack untuk kapabilitas native saat menggunakan @capgo/capacitor-rudderstack, Ringkasan API untuk detail implementasi di API Overview, Pendahuluan untuk detail implementasi di Introduction, Kunci API untuk detail implementasi di API Keys, dan Perangkat untuk detail implementasi di Devices.