Ugrás a tartalomhoz

Útmutató · Capacitor, Ionic, Cordova, PWA

Építs be affiliate- vagy ajánlóprogramot a Capacitor- vagy Ionic-alkalmazásodba.

Az @influto/web mindenhol fut, ahol a kódod is fut egy WebView-ban vagy böngészőben: Capacitorban (Ionic React, Angular és Vue), Cordovában, telepített PWA-kban és Trusted Web Activity-kben. Ugyanarra az interfészre épül, mint az InfluTo natív SDK-i, és olyan webes megoldásokat is ad, amelyekkel egy ajánlás pontosan azonosítható.

Frissítve: 2026. november 1.

Röviden

Telepítsd az @influto/web csomagot, Capacitoron pedig a @capacitor/device, @capacitor/preferences és @capacitor/app csomagokat is. Az InfluTo.initialize-t egyszer hívd meg, miután a platform készen áll, a Capacitor-adapterekkel. A listenForCapacitorLaunchUrls(InfluTo) hívással a deep linkek is beváltják az ajánlásokat. Ezután jön a checkAttribution és az identifyUser. Androidon add át a Play Install Referrert a captureInstallReferrer-nek a pontos egyezéshez. Vásárlásokhoz adj át RevenueCat-kötést, például revenueCatCapacitor(Purchases), RevenueCat nélkül pedig vásárlási forrást, például capgoNativePurchasesSource az @capgo/native-purchases-hoz. Számolj egy délutánnyi munkával, a nagyját a vásárlási oldal viszi el.

Miért tud egy WebView-alkalmazás több ajánlást pontosan hozzárendelni

A natív alkalmazás a beírt kódból pontos egyezést kap. Az áruházon átmenő koppintást utólag párosítjuk. A WebView-alkalmazás magát a kódot is megkaphatja, háromféleképpen:

  • Az indítási URL. Állítsd be a Settings → General → Web app URL mezőt, és az ajánlói linkek ide küldik az asztali látogatókat (és a telefonosokat is, ha nincs áruházi oldalad az ő platformjukra). Az influto_code és influto_click paraméter hozzáadódik a címhez. Az initialize mindkettőt beolvassa, és megtisztítja a címsort.

  • Deep linkek. A listenForCapacitorLaunchUrls(InfluTo) átadja az SDK-nak a hidegindításkori URL-t és minden appUrlOpen eseményt. Cordovában hívd meg az InfluTo.handleLaunchUrl(url) függvényt.

  • A Play Install Referrer. Az InfluTo Google Play-linkjei a kódot és a kattintást a Play referrer paraméterében viszik. Első indításkor olvasd ki egy Install Referrer pluginnal, és add át a captureInstallReferrer-nek.

Ha nincs kód, az InfluTo 72 órán belüli linkkattintás-egyeztetésre vált, amely soha nem hasonlít össze eszközjellemzőket.

1. lépés: telepítés

Add hozzá a csomagot. Capacitoron három plugin opcionális, de ajánlott: a @capacitor/device az eszközadatokhoz, a @capacitor/preferences a WebView-újraindítást túlélő tároláshoz, a @capacitor/app a deep linkekhez. Hozzáadásuk után futtasd az npx cap sync parancsot. A hiányzó pluginok helyett a böngésző alapértelmezései lépnek életbe.

Nincs bundlered? Töltsd be a script-tagos buildet a https://cdn.jsdelivr.net/npm/@influto/web@1/dist/index.global.js címről, és használd a window.InfluTo objektumot. Ez csak az SDK magját tartalmazza, az alútvonalas segédekhez bundler kell.

npm install @influto/web
# Capacitor / Ionic apps (device info, storage, deep links):
npm install @capacitor/device @capacitor/preferences @capacitor/app

2. lépés: egyszeri inicializálás, a megfelelő pillanatban

Az initialize-t egyszer hívd meg, az app gyökerében, és várd meg. Hiba esetén InfluToApiError-t (status, body) dob. Kapd el, naplózd, és folytasd: a következő indításkor újra próbálkozik. Az alábbi táblázat futtatókörnyezetenként mutatja, mikor hívd meg.

Az API-kulcs (it_…, a Setup & SDK oldalon) fejlesztésre és éles használatra is érvényes. Tartsd egy gitignore-olt .env.local fájlban, amelyet a bundlered olvas be. Tipikus Capacitor-indítás egy RevenueCat-es appnál, sorrendben:

import InfluTo from '@influto/web';
import { capacitorAdapters, listenForCapacitorLaunchUrls } from '@influto/web/capacitor';
import { revenueCatCapacitor } from '@influto/web/revenuecat';
import { Purchases } from '@revenuecat/purchases-capacitor';

export async function startInfluTo() {
  await Purchases.configure({ apiKey: 'appl_…' }); // RevenueCat apps: configure it first
  try {
    await InfluTo.initialize({
      apiKey: import.meta.env.VITE_INFLUTO_API_KEY,
      appVersion: '1.4.0',
      ...(await capacitorAdapters()),
      revenueCat: revenueCatCapacitor(Purchases),
    });
  } catch (error) {
    console.warn('InfluTo initialize failed', error); // retried on the next launch
    return;
  }
  await listenForCapacitorLaunchUrls(InfluTo); // deep links → referral claim
  const attribution = await InfluTo.checkAttribution();
  const { appUserID } = await Purchases.getAppUserID();
  await InfluTo.identifyUser(appUserID);
}
FuttatókörnyezetMikor hívd az initialize-t
Capacitor / IonicAz app indulásakor, miután a platform készen áll. Ne egy Ionic-oldalon belül, mert az gyorsítótárazható és újra megnyitható
CordovaA deviceready után: előbb await whenDeviceReady() az @influto/web/cordova-ból, majd add át a ...cordovaAdapters() eredményét az initialize-nak
PWA / böngészőAz oldal betöltésekor

3. lépés: a Google Play-telepítések pontos beváltása

Androidon az első indításkor olvasd ki a referrer stringet az @capgo/capacitor-install-referrer vagy a cordova-play-install-referrer segítségével. Add át az initialize után, a checkAttribution előtt. Egy később felvett kód újra megnyitja a korábbi „organikus” választ. A már hozzárendelt telepítés megtartja az alkotóját.

await InfluTo.captureInstallReferrer(referrer); // the raw referrer string from the plugin
const attribution = await InfluTo.checkAttribution();

4. lépés: kód beírása a felhasználónak

Az applyCode(code) ellenőrzi a felhasználó által beírt kódot, és ha érvényes, alkalmazza. A kódokból levágja a szóközöket, és nagybetűssé alakítja őket. Az érvénytelen kód valid: false értéket ad vissza error_code-dal, például CODE_NOT_FOUND vagy CODE_EXPIRED.

Reactben és Ionic Reactben az @influto/web/react ReferralCodeInput eleme egy egyszerű, stílus nélküli űrlap. Előtölti a linkből érkezett kódot, és beküldéskor alkalmazza. Angularban, Vue-ban vagy keretrendszer nélkül építsd a mezőt az applyCode-ra.

5. lépés: vásárlások összekötése

Az InfluTo csak az áruházban ellenőrzött vásárlások után fizet jutalékot. Platformonként válassz egy utat:

  • RevenueCat: add át a kötést a revenueCat paraméterben: revenueCatCapacitor(Purchases) az @revenuecat/purchases-capacitor 7.5.10+ verzióhoz, revenueCatCordova(window.Purchases) a cordova-plugin-purchases-hez, vagy revenueCatJs a purchases-js-hez. Csatold a checkAttribution előtt, mert az attribútum az ajánlás megtalálásakor íródik. A sikertelen írásokat legfeljebb háromszor próbálja újra.

  • Közvetlenül az áruházból: add át a purchaseSource-t (lásd a táblázatot). Ha az app a Settings → Validation alatt store-direct módra van állítva, az initialize jelenti az új vásárlásokat, a meglévőket pedig pótlólag felküldi, mindegyiket egyszer.

iOS-en a store-direct a StoreKit 2 aláírt tranzakcióját igényli. A capgoNativePurchasesSource továbbadja, a cordova-plugin-purchase esetén viszont ellenőrizned kell, hogy a beállításod ad-e ilyet. Androidon ezek a források nem hordoznak árat, ezért az egyszeri termékeket jelentsd te magad árral és pénznemmel, különben 0 $-ként rögzítjük őket.

TWA-ban a Digital Goods API-nak nincs vásárlási eseménye, ezért minden fizetés után hívd meg az InfluTo.syncExistingPurchases() függvényt. Az árat a digitalGoodsSource megkeresi helyetted.

FuttatókörnyezetVásárlási pluginForrás
Capacitor@capgo/native-purchasescapgoNativePurchasesSource(NativePurchases) a /capacitor-ból
Cordovacordova-plugin-purchase v13cordovaPurchaseSource(CdvPurchase.store) a /cordova-ból
TWA a Google PlayenDigital Goods API (Chrome 101+)digitalGoodsSource() a /pwa-ból

Platformspecifikus buktatók

A legtöbb sikertelen WebView-integráció az alábbiak egyikére vezethető vissza:

  • Capacitor-tárolás. Telepített @capacitor/preferences esetén az SDK ott tárolja az állapotát. A WebView localStorage törlődik, ha az androidScheme vagy az iosScheme megváltozik.

  • ionic serve. Webes fejlesztői buildben a RevenueCat Capacitor plugin csak helyettesítő, ezért az attribútumírás ott nem csinál semmit. Eszközön tesztelj.

  • A Cordova alapértelmezés szerint blokkolja az API-t. Egy friss sablonban a config.xml fájlba kell egy access origin bejegyzés a https://influ.to címhez, a Content-Security-Policy-ba pedig a connect-src https://influ.to. A RevenueCat elavultnak nyilvánította a Cordova-bővítményét, ezért új apphoz inkább a Capacitort válaszd.

  • Böngészők és PWA-k. Böngészőben vagy PWA-ban a reportPurchase hívásnak mindig add át a platformot (ios vagy android). Ha az SDK webes környezetet észlel, nem találgat. Az iOS kezdőképernyős webappjai nem tudnak alkalmazáson belüli vásárlást értékesíteni, de az attribúció így is működik.

6. lépés: tesztelés

A tesztvásárlások nem mozgatnak pénzt, és nem módosítják a statisztikáidat:

  1. 1

    Nézd meg a Setup & SDK oldalt. Az első sikeres initialize után megjelenik az „SDK connected” felirat a platformmal, az @influto/web csomaggal és az SDK verziójával. A debug: true minden lépést naplóz.

  2. 2

    Szimulálj egy vásárlást. A Setup & SDK oldalon a Simulate a purchase egy sandbox-teszvásárlást küld az InfluTo éles folyamatán keresztül. Add meg az egyik kódodat, és látni fogod, hogyan oldódik fel.

  3. 3

    Futtass le egy ajánlott telepítést eszközön. Nyisd meg egy alkotó ajánlói linkjét egy tesztelésre használt eszközön, telepítsd az appot, indítsd el, és vásárolj sandbox-, TestFlight- vagy licenctesztelő fiókkal. Az Integration napló Sandbox nézetben mutatja a hozzárendelt vásárlást.

A clearAttribution() törli a tárolt attribúciót, a kódot és az indítási kódot, így újra lefuttathatod a tesztet. Ha egy kódoló ágens MCP-n keresztül csatlakozik, ezeket az ellenőrzéseket el tudja végezni helyetted.

Capacitor és Ionic affiliate SDK: válaszok.

Van affiliate SDK Capacitorhoz és Ionichoz?

Igen. Az @influto/web az npm-en érhető el, külön alútvonalakkal Capacitorhoz, Cordovához, PWA-khoz, RevenueCat-kötésekhez és Reacthez. Nincsenek függőségei, és minden ES2019-et támogató böngészőben vagy WebView-ban fut.

Működik Ionic Angularral és Ionic Vue-val?

Igen. Az SDK keretrendszerfüggetlen, az Ionic React, az Angular és a Vue pedig egyaránt Capacitoron fut. A kész kódmező csak Reacthez készült (@influto/web/react), ezért Angularban vagy Vue-ban a mezőt az applyCode-ra építed.

Pontosan követhetem a Google Play-telepítéseket?

Igen. Az InfluTo Google Play-linkjei a kódot a Play által aláírt Install Referrerben viszik. Olvasd ki az @capgo/capacitor-install-referrer vagy a cordova-play-install-referrer csomaggal, és a checkAttribution előtt add át a captureInstallReferrer függvénynek.

Mely vásárlási bővítményeket támogatja?

Közvetlen áruházi számlázáshoz: @capgo/native-purchases Capacitorban, cordova-plugin-purchase v13 Cordovában, és a Digital Goods API egy Google Play-os TWA-ban. RevenueCathez: @revenuecat/purchases-capacitor 7.5.10+, @revenuecat/purchases-js 1.4.0+ vagy cordova-plugin-purchases, illetve bármely objektum, amelynek van setAttributes metódusa.

PWA-ban is működik?

Igen. Add meg a Web app URL-t, hogy az ajánlói linkek átadják a kódot az appodnak. Az attribúció és a kézzel beírt kódok minden böngészőben működnek. A Google Play-es TWA a digitalGoodsSource() segítségével a Play Billingen keresztül értékesíthet. Az iOS kezdőképernyős webappjai nem tudnak alkalmazáson belüli vásárlást értékesíteni.

Mennyibe kerül?

Havi 0 $. Minden ellenőrzött vásárlás után az általad beállított jutalékot fizeted, plusz ugyanennek a bevételnek a 10%-át (nagyobb forgalomnál 7%, 5% vagy 3%). Az előre feltöltött egyenleg 50 $-tól indul, és visszatéríthető. Az InfluTo havonta fizet az alkotóknak a Stripe Connecten keresztül 33 országban, amint elérték a 20 $-t.

Add ki az ajánlókódokat a következő Capacitor-buildedben.

Egy npm-csomag, egy ellenőrzési útvonal, visszatéríthető letét. Havi 0 $, a 10% pedig csak az alkotók által hozott bevétel után jár.

Kezdd ingyen