Útmutató · React Native és Expo
Építs be affiliate- vagy ajánlói programot a React Native alkalmazásodba.
A @influto/react-native-sdk működik managed Expo-ban és bare React Native-ben is, iOS-en és Androidon. Megmutatja, melyik alkotó ajánlott egy telepítést, fogadja a beírt ajánlókódokat, és minden vásárlást ellenőriztet a RevenueCat-en keresztül vagy közvetlenül az Apple-lel és a Google-lel.
Frissítve: 2026. november 1.
Röviden
Telepítsd a @influto/react-native-sdk és a @react-native-async-storage/async-storage csomagot, hívd meg egyszer az InfluTo.initialize-t az alkalmazás gyökerében, majd a checkAttribution és az identifyUser függvényt. RevenueCat esetén ennyi a kód: ha a react-native-purchases telepítve van, az SDK beírja az influto_code attribútumot az előfizetőre, a többit a RevenueCat webhookja intézi. RevenueCat nélkül telepítsd az expo-iap vagy a react-native-iap csomagot, és az SDK maga rögzíti az áruházi vásárlásokat. Expo-hoz nem kell config plugin. Számolj egy délutánnyi munkával.
Mit csinál az SDK egy React Native alkalmazásban
Egyetlen csomag lefedi az iOS-t, az Androidot és az Expo összes munkamenetét. Három feladata van:
Megtalálja a telepítés mögötti alkotót. A checkAttribution telepítésenként egyszer ad választ. A beírt kód pontos egyezés; ha nincs kód, a linkkattintás-egyeztetés a telepítést az alkotó linkjére adott friss kattintáshoz köti, 72 órán belül. Nincs IDFA, nincs ATT-kérés.
Fogadja a beírt ajánlókódokat. Az applyCode vagy a kész ReferralCodeInput mező lefedi a podcastokban és videókban elhangzó ajánlásokat, ahol senki sem kattint linkre.
Összeköti a vásárlásokat az ajánlással. RevenueCat esetén megjelöli az előfizetőt; közvetlen áruházi megoldásnál jelenti az áruház által aláírt vásárlást, amelyet az InfluTo ellenőriz az Apple-nél vagy a Google-nél. Jutalék csak e vizsgálat után keletkezik.
1. lépés: telepítsd a csomagot
Add hozzá az SDK-t és az AsyncStorage-ot, amely az SDK helyi állapotát tárolja. Az AsyncStorage natív modul, ezért az automatikus linkeléshez az alkalmazásod saját függőségei között kell lennie. Bare React Native esetén utána futtasd a pod install parancsot az ios/ mappában.
Expo-n nincs más teendő, és config plugin sem kell: az SDK sima JavaScript az AsyncStorage tetején, így fut Expo Go-ban, fejlesztői buildekben és éles buildekben is. React Native 0.60+ és React 16.8+ szükséges hozzá.
npm install @influto/react-native-sdk
# AsyncStorage is a native module — install it in the app too
npm install @react-native-async-storage/async-storage2. lépés: inicializálj egyszer, majd ellenőrizd az attribúciót
Az initialize-t egyszer hívd meg, minél korábban, és minden más előtt várd meg a végét. Hiba esetén (rossz kulcs, nincs hálózat) kivételt dob: kapd el, naplózd, és folytasd; a következő indításkor újra próbálkozik.
A checkAttribution megmondja, hogy a telepítés ajánlásból jött-e, és melyik kóddal. Telepítésenként egyszer dől el, az eszközön tárolódik, és hibatűrő: hálózati hibánál attributed: false értéket ad. Használd arra, hogy köszöntsd az ajánlott felhasználókat, vagy megmutasd az alkotójuk által meghirdetett ajánlatot.
Az API-kulcs (it_…, a Setup & SDK oldalon) a fejlesztői és az éles környezetben is érvényes. Ne kerüljön a verziókezelt forráskódba, például tedd egy gitignore-ral kizárt .env fájlba, és olvasd az Expo EXPO_PUBLIC_ változóin keresztül. Egy tipikus App.tsx RevenueCat-es alkalmazásban, sorrendben:
import { useEffect } from 'react';
import Purchases from 'react-native-purchases';
import InfluTo from '@influto/react-native-sdk';
export default function App() {
useEffect(() => {
(async () => {
Purchases.configure({ apiKey: REVENUECAT_API_KEY }); // RevenueCat apps: configure it first
try {
await InfluTo.initialize({
apiKey: process.env.EXPO_PUBLIC_INFLUTO_API_KEY!,
appVersion: '1.4.0',
debug: __DEV__,
});
} catch (error) {
console.warn('InfluTo initialize failed', error); // retried on the next launch
return;
}
const attribution = await InfluTo.checkAttribution();
await InfluTo.identifyUser(await Purchases.getAppUserID());
})();
}, []);
// …
}3. lépés: adj hozzá ajánlókód-mezőt
Sok ajánlás elhangzó kódként érkezik, nem kattintásként. Az applyCode(code) ellenőrzi a kódot, és ha érvényes, alkalmazza; a kódot levágja és nagybetűssé alakítja helyetted. Érvénytelen kódnál valid: false jön vissza, és egy error_code, például CODE_NOT_FOUND vagy CODE_EXPIRED.
Vagy használd a ReferralCodeInput komponenst a @influto/react-native-sdk/ui csomagból. Linkről érkezett telepítésnél előtölti a kódot, átveszi a színeidet, betűtípusaidat és lefordított felirataidat, az alkotó nevét pedig csak akkor mutatja, ha bekapcsolod.
// Validate, then apply a code the user typed
const result = await InfluTo.applyCode('FITGURU30');
if (result.valid && result.applied) {
// Unlock the offer
}
// Or drop in the ready-made UI:
import { ReferralCodeInput } from '@influto/react-native-sdk/ui';
<ReferralCodeInput onApplied={(result) => {/* ... */}} />4. lépés: kösd be a vásárlásokat, RevenueCat-tel vagy közvetlenül az áruházzal
Az InfluTo csak az áruházban ellenőrzött vásárlások után fizet jutalékot. Platformonként pontosan egy utat válassz; az iOS mehet közvetlenül az áruházzal, miközben az Android marad a RevenueCat-nél.
RevenueCat: kódban nincs mit bekötni. Ha a react-native-purchases telepítve van, az SDK beállítja az influto_code és az influto_referral attribútumot az előfizetőn, amikor ajánlást talál vagy kódot alkalmaz. Ezután kösd be a webhookot a Setup & SDK oldalon, automatikusan egy RevenueCat v2 titkos kulccsal vagy kézzel.
Közvetlen áruházi megoldás: telepítsd az expo-iap vagy a react-native-iap csomagot, add meg az App Store és a Google Play hitelesítő adataidat a Settings → Validation részben, és állítsd a platformot közvetlen áruházi módra. Az initialize ezután rögzíti az új vásárlásokat, és pótolja a meglévőket, mindegyiket egyszer jelentve. Ha inkább magad hívnád a reportPurchase-t, állítsd az autoCapture-t false-ra.
A RevenueCat buktatója: az attribútum egyszer íródik, amikor az ajánlás megvan, és az írás kimarad, ha a RevenueCat még nincs konfigurálva. Előbb konfiguráld a Purchases-t, aztán initialize, aztán checkAttribution, tartaléknak pedig hívd az identifyUser-t a RevenueCat app user ID-val.
A közvetlen áruházi mód buktatója: az Android egyszeri termékeket sorold fel a oneTimeProductIds-ben, és ha az IAP-könyvtárad nem adja meg az árat, jelentsd őket magad árral és pénznemmel, különben 0 $-ral kerülnek rögzítésre. Amit az SDK magától felvesz:
| Csomag | Mit kezd vele az SDK |
|---|---|
| react-native-purchases | Beállítja az influto_code és influto_referral RevenueCat-attribútumokat, amikor ajánlást talál vagy kódot alkalmaz |
| expo-iap vagy react-native-iap | Rögzíti az áruházi vásárlásokat a közvetlen áruházi alkalmazásokban (ha mindkettő telepítve van, az expo-iap-ot használja) |
| react-native-device-info | Hozzáadja az eszköz márkáját és típusát a telepítéskövetéshez |
Megjegyzések Expo-hoz és React Native-hez
A React Native integrációs gondok többsége a csatolásból és a sorrendből ered:
Az Expo Go jó, az áruházi könyvtárak nem. Az Expo Go futtatja az InfluTo SDK-t, de az expo-iap, a react-native-iap és a RevenueCat natív kódot tartalmaz, ezért a tesztvásárlásokat fejlesztői buildben végezd. Az automatikus rögzítés Expo Go-ban csendben nem csinál semmit, ami biztonságos.
Egyszer inicializálj, a gyökérben. Ne egy olyan képernyőn, amely újra és újra betöltődik. Az identifyUser-t bejelentkezésenként egyszer hívd, ne renderelési útvonalról.
AsyncStorage a saját package.json fájlodban. Különben a natív modulja nincs belinkelve, és az SDK nem tudja megőrizni az állapotát.
5. lépés: teszteld, mielőtt alkotókat hívsz
A sandbox-vásárlások nem mozgatnak pénzt, és a statisztikáidat sem változtatják, ezért a tesztet annyiszor ismételheted, ahányszor akarod:
- 1
Győződj meg róla, hogy az SDK csatlakozott. Az első sikeres initialize után a Setup & SDK oldalon megjelenik az „SDK connected” felirat a platformmal és az SDK verziójával; a debug: __DEV__ minden lépést naplóz.
- 2
Szimulálj egy vásárlást. A Setup & SDK oldalon a Simulate a purchase egy sandbox-tesztvásárlást küld át az InfluTo valódi folyamatán. Add meg az egyik kódodat, hogy lásd, feloldódik-e; ez soha nem teljesít be telepítési lépést.
- 3
Telepíts egy alkotói linken keresztül. Csatlakozz a kampányodhoz egy második alkotói fiókkal, nyisd meg az ajánlói linkjét egy tesztelőeszközön, telepítsd a fejlesztői buildedet, és indítsd el. A kód beírása a legmegbízhatóbb teszt.
- 4
Végezz sandbox-vásárlást. Vásárolj sandbox- vagy TestFlight-teszteléssel, illetve Google Play licenctesztelőként. Az Integration log Sandbox nézetben mutatja a kódodhoz rendelt vásárlást.
A clearAttribution() visszaállítja az eszközt egy újabb próbához.
Vagy bízd a kódoló ügynökre
Claude Code-ban, Codexben vagy Cursorban dolgozol? Csatlakoztasd az InfluTo MCP-szerverét, és kérd el tőle az integrációt: az ügynök az „expo” szót ehhez az SDK-hoz rendeli, megírja a fenti lépéseket, és addig figyeli az influto_integration_status értékét, amíg be nem érkezik egy hozzárendelt sandbox-vásárlás.
React Native affiliate SDK – válaszok a kérdésekre.
Van affiliate SDK React Native alkalmazásokhoz?
Igen. A @influto/react-native-sdk egy MIT licencű npm-csomag (forráskód: github.com/influto/influto-react-native). Egyetlen kódbázisból ad iOS-en és Androidon ajánlott telepítés-felismerést, ajánlókódokat és vásárláshozzárendelést. React Native 0.60+ és @react-native-async-storage/async-storage kell hozzá.
Futtathatok ajánlói programot Expo-alkalmazásban?
Igen, managed és bare Expo esetén is, config plugin nélkül. Az SDK fut Expo Go-ban, fejlesztői buildekben és éles buildekben. A közvetlen áruházi vásárlásrögzítéshez expo-iap vagy react-native-iap kell. Ezekhez fejlesztői build szükséges, az Expo Go nem elég.
Kell hozzá RevenueCat?
Nem. RevenueCat (react-native-purchases) esetén az SDK megjelöli az előfizetőt, az InfluTo pedig a RevenueCat webhookját olvassa. Nélküle az InfluTo minden vásárlást közvetlenül az App Store Server API-val vagy a Google Play-jel ellenőriz. Platformonként pontosan egy utat használj.
Hogyan adják meg a felhasználók az ajánlókódot?
Hívd meg az applyCode(code) függvényt a saját meződből, vagy használd a @influto/react-native-sdk/ui csomag ReferralCodeInput komponensét. A kódok szóközök nélkül, nagybetűsítve kerülnek feldolgozásra. A beírt kód erősebb a linkkattintás alapú egyeztetésnél, és rá nem vonatkozik a 72 órás időablak.
Mennyibe kerül?
Havi 0 $. Minden ellenőrzött vásárlás után az általad megadott jutalékot fizeted, plusz ugyanazon bevétel 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 Stripe Connecten keresztül 33 országban, amint összegyűlt náluk 20 $.
Add ki az ajánlókódokat a következő buildben.
Egy npm-csomag, egy ellenőrzési út, visszatéríthető letét. Havi 0 $; 10% csak az alkotók hozta bevételből.
Kezdd el ingyen