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-appsflyer`
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/appsflyer/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-appsflyer` 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-appsflyernpx cap syncImporta
Sezione intitolata “Import”import { AppsFlyer } from '@capgo/capacitor-appsflyer';import type { AFAdRevenueData, AFAndroidInAppPurchase, AFAnonymizeUser, AFAppendToDeepLink, AFConsentData, AFConsentOptions, AFCuid, AFCurrency, AFData, AFDisable, AFEmails, AFEnableTCFDataCollection, AFEvent, AFFbDAL, AFFilters, AFHost, AFInit, AFIosInAppPurchase, AFLanguage, AFLatLng, AFLinkGenerator, AFLogInvite, AFOnelinkDomain, AFOnelinkID, AFPartnerData, AFPath, AFPhone, AFPromotion, AFPurchaseDetailsV2, AFPushPayload, AFUninstall, AFUrls,} from '@capgo/capacitor-appsflyer';Avvio rapido
Sezione intitolata “Quick start”import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.initSDK({ devKey: 'dev-key-123', appID: 'app-id-123',});console.log(result);Esempio: startSDK
Sezione intitolata “Esempio: startSDK”import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.startSDK();console.log(result);Esempio: logEvent
Sezione intitolata “Esempio: logEvent”import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.logEvent({ eventName: 'event' });console.log(result);Errori comuni
Sezione intitolata “Errori comuni”- Listener: rimuovi gli handle quando gli schermi vengono smontati.
- 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”initSDK
Sezione intitolata “initSDK”Usa questo metodo per inizializzare e avviare SDK di AppsFlyer. Questo API deve essere chiamato non appena l'app viene avviata.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.initSDK({ devKey: 'dev-key-123', appID: 'app-id-123',});console.log(result);startSDK
Sezione intitolata “startSDK”Usa questo metodo per avviare SDK di AppsFlyer, solo in modalità manual start.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.startSDK();console.log(result);logEvent
Sezione intitolata “logEvent”Logga un evento in-app.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.logEvent({ eventName: 'event' });console.log(result);setCustomerUserId
Sezione: “setCustomerUserId”Impostare un customer ID personale ti permette di incrociare il tuo ID univoco con l'ID univoco di AppsFlyer e con gli ID di altri dispositivi. Questo ID è disponibile nei report sui dati grezzi e nelle Postback API per il confronto incrociato con i tuoi ID interni.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.setCustomerUserId({ cuid: 'cuid' });setCurrencyCode
Sezione: “setCurrencyCode”Imposta la valuta usata per gli acquisti in-app. Fornisci un code ISO 4217 di tre caratteri.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.setCurrencyCode({ currencyCode: 'USD' });updateServerUninstallToken
Sezione: “updateServerUninstallToken”Passa i token GCM/FCM su Android o i token APNs su iOS quando li ha raccolti un altro plugin. Usa questo metodo per inoltrare ad AppsFlyer i token di misurazione delle disinstallazioni.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.updateServerUninstallToken({ token: 'token-123' });setAppInviteOneLink
Sezione: “setAppInviteOneLink”Imposta l'ID OneLink usato come link base per l'attribuzione degli inviti.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.setAppInviteOneLink({ onelinkID: 'onelink-id-123' });setOneLinkCustomDomain
Sezione intitolata “setOneLinkCustomDomain”Registra i domini OneLink brandizzati per consentire ad AppsFlyer di risolvere i parametri di attribuzione nascosti nei link brevi.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.setOneLinkCustomDomain({ domains: ['example.com'] });appendParametersToDeepLinkingURL
Sezione intitolata “appendParametersToDeepLinkingURL”Abilita l'attribuzione per i deep link App Links senza OneLink. Chiama questo metodo prima di startSDK().
Includi almeno pid e is_retargeting=true nella mappa dei parametri.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.appendParametersToDeepLinkingURL({ contains: 'contains', parameters: {},});setResolveDeepLinkURLs
Sezione intitolata “setResolveDeepLinkURLs”Usalo quando un AppsFlyer OneLink è contenuto in un altro Universal Link. Permette a SDK di risolvere l'URL incapsulato, così il deep linking funziona ancora correttamente.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.setResolveDeepLinkURLs({ urls: ['https://example.com'] });addPushNotificationDeepLinkPath
Sezione intitolata “addPushNotificationDeepLinkPath”Configura come SDK estrae i valori dei deep link dai payload delle notifiche push.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.addPushNotificationDeepLinkPath({ path: ['path/to/file'] });setSharingFilter
Sezione intitolata “setSharingFilter”Impedisce la propagazione degli eventi ai partner AppsFlyer specificati.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.setSharingFilter({ filters: ['filter'] });setSharingFilterForAllPartners
Sezione intitolata “setSharingFilterForAllPartners”Impedisce la propagazione degli eventi a tutti i partner AppsFlyer. Sovrascrive setSharingFilter.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.setSharingFilterForAllPartners();setSharingFilterForPartners
Sezione intitolata “setSharingFilterForPartners”Impedisce la propagazione degli eventi ai partner AppsFlyer specificati.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.setSharingFilterForPartners({ filters: ['filter'] });setAdditionalData
Sezione: “setAdditionalData”Imposta dati aggiuntivi chiave-valore da inviare ad AppsFlyer.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.setAdditionalData({ additionalData: {} });getAppsFlyerUID
Sezione: “getAppsFlyerUID”Recupera l'ID univoco del dispositivo di AppsFlyer (creato per ogni nuova installazione dell'app).
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.getAppsFlyerUID();console.log(result);anonymizeUser
Sezione: “anonymizeUser”Opt-out dell'utente finale dall'analytics di AppsFlyer (anonimizza i dati utente).
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.anonymizeUser({ anonymizeUser: true });Una volta invocato questo API, il nostro SDK non comunicherà più con i nostri server e smetterà di funzionare. Utile per implementare l'opt-in/opt-out dell'utente.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.stop();console.log(result);disableSKAdNetwork
Sezione intitolata “disableSKAdNetwork”Opt-out da SKAdNetwork
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.disableSKAdNetwork({ shouldDisable: true });disableAdvertisingIdentifier
Sezione intitolata “disableAdvertisingIdentifier”Disabilita la raccolta di vari Advertising ID da parte di SDK. Include Apple Identity for Advertisers (IDFA), Google Advertising ID (GAID), OAID e Amazon Advertising ID (AAID).
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.disableAdvertisingIdentifier({ shouldDisable: true });disableCollectASA
Sezione intitolata “disableCollectASA”Disabilita le attribuzioni di Apple Search Ads.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.disableCollectASA({ shouldDisable: true });setHost
Sezione intitolata “setHost”Imposta un host personalizzato.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.setHost({ hostPrefixName: 'host-prefix', hostName: 'host',});generateInviteLink
Sezione intitolata “generateInviteLink”Permetti ai tuoi utenti attuali di invitare amici e contatti come nuovi utenti della tua app
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.generateInviteLink({ brandDomain: 'example.com' });console.log(result);validateAndLogInAppPurchaseAndroid
Sezione intitolata “validateAndLogInAppPurchaseAndroid”API per la verifica lato server degli acquisti in-app. Se la validazione ha successo, verrà loggato automaticamente un evento af_purchase con i valori rilevanti.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.validateAndLogInAppPurchaseAndroid({ currency: 'USD', publicKey: 'public-key-123', signature: 'signature', purchaseData: 'purchase-data', price: 'price',});console.log(result);validateAndLogInAppPurchaseIos
Sezione intitolata “validateAndLogInAppPurchaseIos”Consulta le definizioni nel sorgente per il contratto attuale.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.validateAndLogInAppPurchaseIos({ currency: 'USD', inAppPurchase: 'in-app-purchase', price: 'price', transactionId: 'transaction-id-123',});console.log(result);getSdkVersion
Sezione intitolata “getSdkVersion”Ottieni la versione SDK di AppsFlyer utilizzata nell'app.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.getSdkVersion();console.log(result);enableFacebookDeferredApplinks
Sezione intitolata “enableFacebookDeferredApplinks”Abilita la raccolta dei Facebook Deferred AppLinks. Richiede Facebook SDK e l'app Facebook sul dispositivo target/client. Questo API deve essere invocato prima di inizializzare l'SDK di AppsFlyer per funzionare correttamente.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.enableFacebookDeferredApplinks({ enableFacebookDAL: true });console.log(result);sendPushNotificationData
Sezione intitolata “sendPushNotificationData”Misura e ottieni dati dalle campagne di push notification.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.sendPushNotificationData({ pushPayload: {} });setCurrentDeviceLanguage
Sezione intitolata “setCurrentDeviceLanguage”Imposta la lingua del dispositivo. I dati saranno visualizzati nei Raw Data Reports
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.setCurrentDeviceLanguage({ language: 'en-US' });console.log(result);logCrossPromoteImpression
Sezione intitolata “logCrossPromoteImpression”Logga un'impression come parte di una campagna di cross-promotion. Assicurati di usare l'ID dell'app promossa così come appare nella dashboard di AppsFlyer.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.logCrossPromoteImpression({ appID: 'app-id-123', campaign: 'campaign', parameters: {},});console.log(result);setUserEmails
Sezione intitolata “setUserEmails”Imposta le email degli utenti e cifrale.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.setUserEmails({ emails: ['user@example.com'] });console.log(result);logLocation
Sezione intitolata “logLocation”Registra manualmente la posizione dell'utente
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.logLocation({ latitude: 48.8566, longitude: 2.3522,});console.log(result);setPhoneNumber
Sezione intitolata “setPhoneNumber”Verrà inviato come stringa criptata SHA-256.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.setPhoneNumber({ phone: '+15555550123' });console.log(result);setPartnerData
Sezione intitolata “setPartnerData”Consente l'invio di dati personalizzati per l'integrazione con partner.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.setPartnerData({ data: {}, partnerId: 'partner-id-123',});console.log(result);logInvite
Sezione intitolata “logInvite”Usa per registrare un evento in-app di invito utente (af_invite).
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.logInvite({ eventParameters: {}, channel: 'channel',});console.log(result);setDisableNetworkData
Sezione intitolata “setDisableNetworkData”Usa per disattivare la raccolta del nome dell'operatore di rete (carrier) e del nome dell'operatore SIM dal dispositivo.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.setDisableNetworkData({ shouldDisable: true });enableTCFDataCollection
Sezione intitolata “enableTCFDataCollection”Utilizza per attivare o disattivare la raccolta automatica dei dati di consenso per gli utenti che utilizzano una CMP. Il valore del flag verrà salvato tra le sessioni dell'app.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.enableTCFDataCollection({ shouldEnableTCFDataCollection: true });setConsentData
Sezione intitolata “setConsentData”Usa questo metodo per impostare manualmente i dati di consenso dell'utente. Se la tua app non utilizza una CMP compatibile con TCF v2.2, usa il seguente metodo per fornire manualmente i dati di consenso direttamente a SDK.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.setConsentData({ data: { isUserSubjectToGDPR: true } });logAdRevenue
Sezione intitolata “logAdRevenue”Attribuendo i ricavi pubblicitari, i proprietari delle app ottengono una visione completa dell'LTV dell'utente e del ROI delle campagne. I ricavi pubblicitari derivano dalla visualizzazione di annunci in rewarded video, offer walls, interstitial e banner all'interno dell'app. Puoi usare questo metodo per loggare i tuoi ricavi pubblicitari.
import { AppsFlyer, MediationNetwork } from '@capgo/capacitor-appsflyer';
await AppsFlyer.logAdRevenue({ monetizationNetwork: 'monetization-network', mediationNetwork: MediationNetwork.IRONSOURCE, currencyIso4217Code: 'USD', revenue: 1,});setConsentDataV2
Sezione intitolata “setConsentDataV2”Usa questo metodo per impostare manualmente i dati di consenso dell'utente. Se la tua app non utilizza una CMP compatibile con TCF v2.2, usa il seguente metodo per fornire manualmente i dati di consenso direttamente a SDK.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.setConsentDataV2({ isUserSubjectToGDPR: true, hasConsentForDataUsage: true, hasConsentForAdsPersonalization: true, hasConsentForAdStorage: true,});isSDKStarted
Sezione intitolata “isSDKStarted”Usa questo metodo per verificare se l'SDK di AppsFlyer è già stato avviato nella sessione corrente.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.isSDKStarted();console.log(result);isSDKStopped
Sezione intitolata “isSDKStopped”Usa questo metodo per verificare se l'SDK di AppsFlyer è attualmente fermo.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.isSDKStopped();console.log(result);disableAppSetId
Sezione intitolata “disableAppSetId”Disabilita la raccolta dell'App Set ID. Se chiamato prima dell'init di SDK, l'App Set ID non verrà raccolto. Se chiamato dopo l'init, l'App Set ID verrà raccolto ma non inviato nei payload delle richieste. Solo Android.
import { AppsFlyer } from '@capgo/capacitor-appsflyer';
await AppsFlyer.disableAppSetId();validateAndLogInAppPurchaseV2
Sezione intitolata “validateAndLogInAppPurchaseV2”API per la verifica server degli acquisti in-app V2. Se la validazione ha successo, verrà registrato automaticamente un evento af_purchase con i valori pertinenti.
import { AppsFlyer, AFPurchaseType } from '@capgo/capacitor-appsflyer';
const result = await AppsFlyer.validateAndLogInAppPurchaseV2({ purchaseDetails: { purchaseType: AFPurchaseType.oneTimePurchase, purchaseToken: 'purchase-token-123', productId: 'product-id-123', },});console.log(result);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-appsflyer per la funzionalità nativa in Utilizzo di @capgo/capacitor-appsflyer, 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.