Průvodce · Capacitor, Ionic, Cordova, PWA
Přidejte affiliate nebo referral program do aplikace v Capacitor nebo Ionic.
@influto/web funguje všude, kde váš kód běží ve WebView nebo v prohlížeči: v Capacitoru (Ionic React, Angular a Vue), Cordově, nainstalovaných PWA a Trusted Web Activities. Řídí se stejným kontraktem jako nativní SDK InfluTo a navíc umí způsoby, jak doporučení přesně zachytit, dostupné jen na webu.
Aktualizováno 1. listopadu 2026
Ve zkratce
Nainstalujte @influto/web a v Capacitoru také @capacitor/device, @capacitor/preferences a @capacitor/app. Jednou zavolejte InfluTo.initialize, až bude platforma připravená, a předejte mu adaptéry pro Capacitor. Zavolejte listenForCapacitorLaunchUrls(InfluTo), aby deep linky zachytávaly doporučení, a poté checkAttribution a identifyUser. Na Androidu předejte Play Install Referrer funkci captureInstallReferrer, získáte tak přesnou shodu. Pro nákupy předejte binding RevenueCat, například revenueCatCapacitor(Purchases), nebo bez RevenueCat zdroj nákupů, například capgoNativePurchasesSource pro @capgo/native-purchases. Počítejte s odpolednem práce, většinou kvůli nákupům.
Proč umí aplikace ve WebView přiřadit více doporučení přesně
Nativní aplikace získá přesnou shodu z napsaného kódu. Klepnutí, které vede přes obchod, se páruje až dodatečně. Aplikace ve WebView může kód získat přímo, a to třemi způsoby:
Spouštěcí URL. Nastavte Settings → General → Web app URL. Odkazy s doporučením tam pošlou návštěvníky z počítače (a z telefonu, pokud pro jejich platformu nemáte stránku v obchodě) s přidanými parametry influto_code a influto_click. initialize přečte oba a vyčistí adresní řádek.
Deep linky. listenForCapacitorLaunchUrls(InfluTo) předává SDK URL ze studeného startu i každou událost appUrlOpen. V Cordově zavolejte InfluTo.handleLaunchUrl(url).
Play Install Referrer. Odkazy na Google Play z InfluTo nesou kód a klik v parametru referrer. Přečtěte ho při prvním spuštění pomocí pluginu Install Referrer a předejte ho funkci captureInstallReferrer.
Pokud kód nikdo nepřenese, InfluTo se vrátí k párování podle kliku na odkaz v rozmezí 72 hodin. To nikdy neporovnává vlastnosti zařízení.
Krok 1: instalace
Přidejte balíček. V Capacitoru jsou tři pluginy volitelné, ale doporučené: @capacitor/device pro údaje o zařízení, @capacitor/preferences pro úložiště, které přežije reset WebView, a @capacitor/app pro deep linky. Po jejich přidání spusťte npx cap sync. Chybějící pluginy nahradí výchozí funkce prohlížeče.
Nemáte bundler? Načtěte build pro značku script z https://cdn.jsdelivr.net/npm/@influto/web@1/dist/index.global.js a použijte window.InfluTo. Obsahuje jen jádro SDK, pomocné funkce z podcest vyžadují bundler.
npm install @influto/web
# Capacitor / Ionic apps (device info, storage, deep links):
npm install @capacitor/device @capacitor/preferences @capacitor/appKrok 2: inicializujte jednou, ve správný okamžik
Zavolejte initialize jednou, v kořeni aplikace, a počkejte na výsledek. Při selhání vyhodí InfluToApiError (status, body): zachyťte ho, zapište do logu a pokračujte. Při dalším spuštění se to zkusí znovu. Tabulka níže ukazuje, kdy ji volat v jednotlivých prostředích.
API klíč (it_…, najdete ho v Setup & SDK) platí pro vývoj i produkci. Uložte ho do souboru .env.local, který je v .gitignore, a čtěte ho přes bundler. Typický start aplikace v Capacitoru s RevenueCat, popořadě:
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);
}| Prostředí | Kdy volat initialize |
|---|---|
| Capacitor / Ionic | Při startu aplikace, až je platforma připravená. Ne uvnitř stránky Ionic, která se může ukládat do cache a znovu otevírat |
| Cordova | Po deviceready: nejdřív await whenDeviceReady() z @influto/web/cordova, pak předejte ...cordovaAdapters() do initialize |
| PWA / prohlížeč | Při načtení stránky |
Krok 3: přesně přiřaďte instalace z Play Store
Na Androidu přečtěte řetězec referreru při prvním spuštění pomocí @capgo/capacitor-install-referrer nebo cordova-play-install-referrer a předejte ho po initialize, před checkAttribution. Kód zachycený později přepíše dřívější odpověď „organic“. Instalace, která už přiřazená je, si svého tvůrce ponechá.
await InfluTo.captureInstallReferrer(referrer); // the raw referrer string from the plugin
const attribution = await InfluTo.checkAttribution();Krok 4: nechte uživatele zadat kód
applyCode(code) ověří kód, který uživatel napsal, a pokud je platný, použije ho. Kódy se ořežou o mezery a převedou na velká písmena. Neplatný kód vrátí valid: false a error_code, například CODE_NOT_FOUND nebo CODE_EXPIRED.
V Reactu a Ionic React je ReferralCodeInput z @influto/web/react jednoduchý nestylovaný formulář. Předvyplní kód z odkazu a po odeslání ho použije. V Angularu, Vue nebo bez frameworku postavte pole nad applyCode.
Krok 5: propojte nákupy
InfluTo vyplácí provizi jen z nákupů ověřených obchodem. Pro každou platformu zvolte jednu cestu:
RevenueCat: předejte binding jako revenueCat: revenueCatCapacitor(Purchases) pro @revenuecat/purchases-capacitor 7.5.10+, revenueCatCordova(window.Purchases) pro cordova-plugin-purchases nebo revenueCatJs pro purchases-js. Připojte ho před checkAttribution, protože atribut se zapisuje ve chvíli, kdy se doporučení najde. Neúspěšné zápisy se opakují až 3krát.
Přímo z obchodu: předejte purchaseSource (viz tabulka). Když je aplikace v Settings → Validation nastavená na ověřování přímo z obchodu, initialize ohlásí nové nákupy a doplní i stávající, každý jednou.
Na iOS vyžaduje ověřování přímo z obchodu podepsanou transakci StoreKit 2. capgoNativePurchasesSource ji předá dál, u cordova-plugin-purchase si musíte ověřit, že ji vaše nastavení zpřístupňuje. Na Androidu tyto zdroje cenu nenesou, jednorázové produkty proto hlaste sami s cenou a měnou, jinak se zapíšou s 0 $.
V TWA nemá Digital Goods API událost nákupu, proto po každé platbě zavolejte InfluTo.syncExistingPurchases(). digitalGoodsSource cenu dohledá za vás.
| Prostředí | Plugin pro nákupy | Zdroj |
|---|---|---|
| Capacitor | @capgo/native-purchases | capgoNativePurchasesSource(NativePurchases) z /capacitor |
| Cordova | cordova-plugin-purchase v13 | cordovaPurchaseSource(CdvPurchase.store) z /cordova |
| TWA na Google Play | Digital Goods API (Chrome 101+) | digitalGoodsSource() z /pwa |
Úskalí jednotlivých platforem
Většina nezdařených integrací do WebView má příčinu v jednom z těchto bodů:
Úložiště v Capacitoru. Pokud je nainstalovaný @capacitor/preferences, SDK ukládá svůj stav tam. localStorage ve WebView se smaže, když se změní androidScheme nebo iosScheme.
ionic serve. Ve webovém vývojovém buildu je plugin RevenueCat pro Capacitor jen zástupný, takže se zápisy atributů neprovedou. Testujte na zařízení.
Cordova ve výchozím stavu blokuje API. Nová šablona potřebuje v config.xml záznam access origin pro https://influ.to a v Content-Security-Policy direktivu connect-src https://influ.to. RevenueCat svůj plugin pro Cordovu přestal rozvíjet, takže pro novou aplikaci raději zvolte Capacitor.
Prohlížeče a PWA. V prohlížeči nebo PWA vždy předávejte do reportPurchase parametr platform (ios nebo android). SDK ho při detekci webu neuhodne. Webové aplikace přidané na plochu iOS nemohou prodávat nákupy v aplikaci, ale attribution funguje i tam.
Krok 6: vyzkoušejte to
Testovací nákupy nepřesouvají žádné peníze a nemění vaše statistiky:
- 1
Zkontrolujte Nastavení a SDK. Po prvním úspěšném initialize se zobrazí „SDK connected“ spolu s platformou, @influto/web a verzí SDK. S debug: true se loguje každý krok.
- 2
Nasimulujte nákup. Simulovat nákup v Nastavení a SDK pošle testovací nákup ze sandboxu skutečným řetězcem zpracování InfluTo. Zadejte jeden ze svých kódů a uvidíte, jak se přiřadí.
- 3
Projděte doporučenou instalaci na zařízení. Otevřete na testovacím zařízení doporučovací odkaz tvůrce, aplikaci nainstalujte, spusťte a nakupte jako tester ze sandboxu, TestFlightu nebo licenční tester. Log integrace přepnutý na Sandbox ukáže, že se nákup přiřadil.
clearAttribution() smaže uloženou attribution, kód i kód ze spuštění, takže můžete test zopakovat. Pokud máte přes MCP připojeného kódovacího agenta, tyto kontroly za vás provede.
Affiliate SDK pro Capacitor a Ionic: odpovědi.
Existuje affiliate SDK pro Capacitor a Ionic?
Ano. Balíček @influto/web na npm má subpath pro Capacitor, Cordovu, PWA, napojení na RevenueCat a React. Nemá žádné závislosti a běží v jakémkoli prohlížeči nebo WebView s podporou ES2019.
Funguje s Ionic Angular a Ionic Vue?
Ano. SDK není vázané na žádný framework a Ionic React, Angular i Vue běží na Capacitoru. Hotové pole pro kód je jen pro React (@influto/web/react), takže v Angularu nebo Vue si pole postavíte nad applyCode.
Dá se přesně přiřadit instalace z Google Play?
Ano. Odkazy na Google Play z InfluTo nesou kód v Install Referreru podepsaném Googlem. Přečtěte ho pomocí @capgo/capacitor-install-referrer nebo cordova-play-install-referrer a před checkAttribution ho předejte do captureInstallReferrer.
Které pluginy pro nákupy jsou podporované?
Pro přímé nákupy přes obchod: @capgo/native-purchases v Capacitoru, cordova-plugin-purchase v13 v Cordově a Digital Goods API v TWA na Google Play. Pro RevenueCat: @revenuecat/purchases-capacitor 7.5.10+, @revenuecat/purchases-js 1.4.0+ nebo cordova-plugin-purchases, případně jakýkoli objekt s metodou setAttributes.
Funguje to v PWA?
Ano. Nastavte URL webové aplikace, aby odkazy předávaly kód do vaší aplikace. Attribution i ručně zadané kódy fungují v každém prohlížeči. TWA na Google Play může prodávat přes Play Billing pomocí digitalGoodsSource(). Webové aplikace na ploše iOS nákupy v aplikaci prodávat nemohou.
Kolik to stojí?
0 $ měsíčně. Za každý ověřený nákup platíte provizi, kterou jste nastavili, plus 10 % ze stejných tržeb (při vyšším objemu 7 %, 5 % nebo 3 %). Předplacená peněženka začíná na 50 $ a dá se vrátit. InfluTo vyplácí tvůrce měsíčně přes Stripe Connect ve 33 zemích, jakmile vydělají 20 $.
Přidejte referral kódy do příštího buildu v Capacitoru.
Jeden balíček npm, jedna cesta ověření, vratná záloha. 0 $ měsíčně a 10 % jen z tržeb, které přivedou tvůrci.
Začít zdarma