Diese Plugin wurde nun in die offizielle Repository von RevenueCat übertragen. Bitte besuchen Sie die offizielle Dokumentation für weitere Informationen.
Wenn Sie ein einfacheres natives API ohne RevenueCat bevorzugen, @capgo/native-purchases implementiert in-App-Käufe und -Abonnements direkt mit StoreKit und Google Play Billing.
Capacitor Käufe ist ein Plugin für das Capacitor Framework, das es Entwicklern ermöglicht, In-App-Käufe auf iOS und Android durchzuführen. Es bietet eine einfache und konsistente API über mehrere Plattformen hinweg, was es Entwicklern erleichtert, In-App-Abonnements und Käufe in ihren mobilen Apps zu implementieren.
Eines der wichtigsten Features des Capacitor Käufe-Plugins ist die Integration mit RevenueCat, einer Plattform, die Werkzeuge für In-App-Abonnements und In-App-Käufe bereitstellt. RevenueCat vereinfacht den Prozess der Implementierung von In-App-Abonnements und Käufen, indem es eine einfache und konsistente API über mehrere Plattformen hinweg bereitstellt und Aufgaben wie die Validierung von Rechnungen und die Benutzerverwaltung automatisiert.
Mit RevenueCat können Entwickler leicht Subskriptionen verwalten, den Umsatz verfolgen und andere damit verbundene Aufgaben durchführen. Einige Funktionen, die von RevenueCat angeboten werden, sind:
- Automatisierte Rechnungsvalidierung
- Benutzerverwaltung
- Unterstützung für benutzerdefinierte Preismodelle
- Detaillierte Analytik -Scalierung
Durch die Verwendung des Capacitor Käufe-Plugins mit RevenueCat können Entwickler Zeit und Mühe sparen, wenn sie In-App-Abonnements und Käufe in ihren mobilen Apps implementieren, und zusätzliche Funktionen bereitstellen, die dazu beitragen können, die Benutzererfahrung zu verbessern und den Umsatz zu erhöhen.
Mit dem Capacitor Käufe-Plugin und RevenueCat können Entwickler leicht In-App-Abonnements und Käufe verwalten und tracken, Rechnungen validieren und Benutzer über mehrere Plattformen hinweg verwalten. Es ermöglicht auch die Erstellung benutzerdefinierter Preismodelle und die Gewinnung detaillierter Analytik, um die Leistung und den Umsatz zu verbessern.
Installation
Be sure to use the latest version of Capacitor and the Capacitor Purchases plugin. You can check the latest version of Capacitor and the Capacitor Purchases plugin on the Capacitor website.
To install the Capacitor Purchases plugin, run the following command:
npm i @capgo/capacitor-purchases
Um das code-Kaufplugin zu installieren, führen Sie folgenden Befehl aus:
npx cap sync
Fügen Sie das Plugin zu Ihrer native __CAPGO_KEEP_0__ hinzu.
Schritt 1 in Xcode

Schritt 2 in Xcode
This guide will walk you through how to get up and running with subscriptions and RevenueCat’s SDK with only a few lines of code.
Diese Anleitung führt Sie durch die Einrichtung von Abonnements und RevenueCats __CAPGO_KEEP_0__ mit nur wenigen Zeilen __CAPGO_KEEP_1__. Registrieren Sie sich für ein neues RevenueCat-Konto.
📘
💡 Hier ist ein Tipp!
RevenueCat empfiehlt, für jeden App / Projekt einen separaten RevenueCat-Account zu erstellen, insbesondere, wenn Sie jemals beabsichtigen, die App zu verkaufen. Dies wird den Übertragungsprozess beschleunigen, da Sie das gesamte Konto übertragen können, anstatt auf die Übertragung einzelner Projekte durch RevenueCat-Support zu warten.
Organisationen / Unternehmen
Wenn Sie sich bei RevenueCat anmelden und Ihre App innerhalb eines Projekts einrichten, empfehlen wir die Verwendung eines Unternehmenskontos. So können Sie den Rest Ihres Teams als Mitwirkende zu Ihrem Projekt einladen, aber nur der Projektleiter kann die Rechnungsstellungverwalten. Projektmitarbeiter können keine Rechnungsstellungsdetails verwalten.
2. Projekt- und App-Konfiguration
▶️ Projekt erstellen
Navigieren Sie zum RevenueCat-Dashboard und fügen Sie ein neues Projekt hinzu aus dem Dropdown-Menü in der oberen Navigationsleiste genannt Projekte.

Das Pop-up-Fenster für die Erstellung eines neuen Projekts
▶️ App / Plattform hinzufügen
Von Projekt-Einstellungen > Apps In der linken Menüleiste des Projektdashboards wählen Sie die Plattform für die App aus, die Sie hinzufügen werden.

Projektdashboard für die Auswahl der App-Plattform
Das Feld App-Name ist erforderlich, um Ihre App bei RevenueCat hinzuzufügen. Die restlichen Konfigurationsfelder können später hinzugefügt werden. Um Test- und Produktionskäufe durchzuführen, müssen die Bundle-ID (iOS) / Paketname (Android) sowie der Shared Secret (iOS) / Dienstzertifikate (Android) konfiguriert werden.

App-Konfigurationsseite für eine Apple App Store-App
📘
💡 Hier ist ein Tip!
Nach der Registrierung Ihrer App empfiehlt RevenueCat die Einrichtung von Plattform-Serverbenachrichtigungen. Diese Benachrichtigungen sind nicht erforderlich, aber sie beschleunigen Webhooks und die Lieferung von Integrationszeiten und reduzieren die Verzögerungszeit bei der Aktualisierung Ihrer Abonnenten.
📘
Staging- vs. Produktions-Apps und -Benutzer
RevenueCat selbst hat keine separaten Umgebungen für Staging und Produktions. Vielmehr werden die zugrunde liegenden Transaktionen für Benutzer durch Sandbox- und Produktionsumgebungen unterschieden.
Jede RevenueCat-App kann sowohl Sandbox- als auch Produktionskäufe aus den Stores durchführen. Wenn Sie separate Apps für Staging und Produktions haben, können Sie mehrere Projekte in RevenueCat erstellen, um Ihren Aufbau zu spiegeln.
Darüber hinaus werden die Benutzer nicht durch die Umgebung getrennt, entweder. Der gleiche Benutzer kann gleichzeitig aktive Sandbox-Käufe und aktive Produktionskäufe haben.
▶️ Dienstzertifikate
Dienstzertifikate müssen für RevenueCat eingerichtet werden, damit es mit den App-Stores auf Ihre Rechnung kommunizieren kann. Siehe die RevenueCat-Anleitungen App Store Connect-Shared-Secret, Play Service-Zertifikate, und Amazon Appstore-Shared-Secret für weitere Informationen.
Hinweis, dass Play-Service-Zertifikate bis zu 36 Stunden, um sich durch Google's Servern zu verbreiten.
3. Produktkonfiguration
▶️ Ladenhäuser-Einrichtung
Bevor Sie mit der Verwendung von RevenueCat, um Produkte abzurufen, müssen Sie Ihre Produkte in den jeweiligen Läden konfigurieren. Siehe die folgenden Anleitungen für App Store Connect, Google Play Console, Amazon Appstore, und Stripe Um Ihnen bei diesem Prozess zu helfen,
Wenn Sie iOS-Produkte verkaufen, stellen Sie sicher, dass Sie Ihr 'Zahlungsvereinbarung für bezahlte Anwendungen' unterschreiben und Ihre Bank- und Steuereinstellungen in App Store Connect > Vereinbarungen, Steuern und Bankverbindung. Dies muss vor der Testung von Kaufvorgängen abgeschlossen werden.
📘
Wollen Sie die Verkäufsanzeige während der Testphase auslassen?
Auf iOS können Sie die Produktkonfiguration in App Store Connect durch die Verwendung von StoreKit-Konfigurationsdateien verzögern. Diese Konfigurationsdateien erfordern nur minimalen Aufwand und können über Xcode direkt konfiguriert werden.
Mehr über die Einrichtung von StoreKit-Konfigurationsdateien in RevenueCat lesen Sandbox-Testen Anleitung.
▶️ Produkte und Berechtigungen in RevenueCat konfigurieren
Sobald Ihre In-App-Produkte in App Store Connect, Google Play Console, Amazon Appstoreoder Stripemüssen Sie diese Konfiguration in das RevenueCat-Dashboard kopieren. RevenueCat verwendet ein Berechtigungen-System, um Zugriff auf Premium-Funktionen zu steuern, und Angebote, um die Menge der Produkte zu verwalten, die Sie Ihren Kunden anbieten.
Berechtigungen sind der Zugriff, den ein Kunde nach dem Kauf eines bestimmten Produkts "erworben" hat. Angebote sind eine einfache Möglichkeit, die In-App-Produkte zu organisieren, die Sie auf Ihrer Bezahlwand anbieten möchten und sie remote konfigurieren möchten. RevenueCat empfiehlt __CAPGO_KEEP_0__ verwenden Sie diese Funktionen, um Ihre code zu vereinfachen und ermöglichen Sie es Ihnen, Produkte ohne eine App-Update zu ändern.
Siehe Produkte konfigurieren um Ihre Produkte einzurichten und sie dann in Angebote oder Entgeltberechtigungen zu organisieren.

4. Verwenden Sie die Einkäufe von RevenueCat’s SDK
RevenueCat SDK implementiert Einkäufe und Abonnements auf Plattformen reibungslos und synchronisiert Token mit dem Server von RevenueCat.
Wenn Sie Probleme mit den SDK haben, sehen Sie Fehlerbehebung der SDKs für Anweisungen.
📘
Verwenden Sie nur Ihre öffentliche SDK-Schlüssel, um Einkäufe zu konfigurieren
Sie können Ihre öffentliche SDK-Schlüssel von der API Schlüssel Registerkarte unter Projekt-Einstellungen im Dashboard.
Sie sollten die gemeinsame Instanz von Käufe nur einmal konfigurieren, meist bei der App-Start. Anschließend wird die gleiche Instanz in Ihrem App über die Zugriff auf die .shared SDK
Instanz geteilt. Configuring SDK Konfiguration von __CAPGO_KEEP_0__
für weitere Informationen und Best Practices. Käufe können nur mit Ihrem öffentlichen __CAPGO_KEEP_0__-Schlüssel getätigt werden. Sie können mehr über die verschiedenen __CAPGO_KEEP_1__-Schlüssel in RevenueCat lesen with your public SDK key only. You can read more about the different API keys available in RevenueCat Wenn Sie in der Entwicklung sind, empfiehlt RevenueCat die Aktivierung von ausführlicheren Debug-Protokollen. Weitere Informationen zu diesen Protokollen finden Sie in ihrem.
import { CapacitorPurchases } from '@capgo/capacitor-purchases'
import { isPlatform } from '@ionic/vue' // use the right one for your framework
CapacitorPurchases.setDebugLogsEnabled({ enabled: import.meta.env.DEV }) // Enable to get debug logs in dev mode
if (isPlatform('ios')) {
CapacitorPurchases.setup({ apiKey:'appl_******'})
} else if (isPlatform('android')) {
CapacitorPurchases.setup({ apiKey:'goog_******'})
}
Debugging-Anleitung. Wenn Sie RevenueCat neben Ihrem bestehenden Kauf __CAPGO_KEEP_0__ verwenden möchten, beziehen Sie sich auf ihre Anleitung zum Beobachtungsmodus
If you’re planning to use RevenueCat alongside your existing purchase code, refer to their guide on Wenn Sie ein Benutzerauthentifizierungssystem in Ihrer App haben, können Sie einen Benutzer-Bezeichner zum Zeitpunkt der Konfiguration oder zu einem späteren Zeitpunkt mit einem Aufruf an.
📘
machen. Um mehr zu erfahren, besuchen Sie die Anleitung von RevenueCat zu
Benutzeridentifizierung
.logIn()Authentication guide Debugging guide.
The SDK wird automatisch die konfigurierten Angebote abrufen und die Produktinformationen von Apple, Google oder Amazon abrufen. So werden bereits verfügbare Produkte geladen, wenn Kunden Ihre Kaufseite starten. konfigurierte Angebote und die Produktinformationen von Apple, Google oder Amazon. So werden bereits verfügbare Produkte geladen, wenn Kunden Ihre Kaufseite starten.
Unten sehen Sie ein Beispiel für die Abfrage von Angeboten. Sie können Angebote verwenden, um Ihre Paywall-Ansicht zu organisieren. Siehe die RevenueCat-Anleitung zu Verfügbare Produkte anzeigen für weitere Informationen und Best Practices.
▶️ Abfrage und Anzeige verfügbarer Produkte
📘
Konfiguration von Kaufvorgängen mit Benutzer-IDs
Wenn Sie ein Benutzerauthentifizierungssystem in Ihrer App haben, können Sie eine Benutzer-ID bei der Konfiguration oder zu einem späteren Zeitpunkt mit einem Aufruf von
.logIn()bekommen. Um mehr zu erfahren, besuchen Sie die RevenueCat-Anleitung zu Benutzer identifizieren.
Das SDK wird automatisch die konfigurierten Angebote abrufen __CAPGO_KEEP_0__ Angebote und die Produktinformationen von Apple, Google oder Amazon abrufen. So werden bereits verfügbare Produkte geladen, wenn Kunden Ihre Kaufseite öffnen.
Hier ist ein Beispiel für die Abfrage von Angeboten. Sie können Angebote verwenden, um Ihre Paywall-Ansicht zu organisieren. Weitere Informationen und Best Practices finden Sie im RevenueCat-Leitfaden zu Produkte anzeigen Wenn Ihre
const { offerings } = await CapacitorPurchases.getOfferings()
if (offerings.current !== null) {
// Display current offering with offerings.current
}
__CAPGO_KEEP_0__ Angebote Produkte, oder verfügbare__CAPGO_KEEP_0__ Pakete leer sind, liegt es wahrscheinlich an einer Konfigurationsproblematik im jeweiligen Store. Die häufigsten Gründe für dieses Problem in App Store Connect sind ein veraltetes 'Zahlungsanwendungsabkommen' oder Produkte, die nicht zumindest im 'Zur Veröffentlichung bereit' Zustand sind. In Google Play tritt dies normalerweise auf, wenn die App nicht auf einem geschlossenen Track veröffentlicht ist und ein gültiger Testnutzer hinzugefügt wurde.
configured Angebote
Sie finden weitere Informationen zum Beheben dieses Problems in RevenueCat Hilfezentrum.
▶️ Kauf abschließen
Der SDK enthält eine einfache Methode zur Vereinfachung von Kaufvorgängen. Der purchase:package nimmt ein Paket aus der abgerufenen Angebotsliste und verarbeitet den Kauf mit dem entsprechenden App-Store.
Der code-Beispiel unten zeigt den Kaufprozess eines Pakets und die Bestätigung, dass es das "your_entitlement_id"-Inhalt freischaltet. Weitere Details zur purchase:package Methode finden Sie in der RevenueCat-Anleitung zum Kaufabschluss.
const purchase = async (p: Package): Promise<PurchaserInfo | null> => {
try {
// console.log('purchase', p)
const data = await CapacitorPurchases.purchasePackage({
identifier: p.identifier,
offeringIdentifier: p.offeringIdentifier,
})
const purchaserInfo = data.purchaserInfo
// console.log('listenBuy', purchaserInfo)
if (purchaserInfo.activeSubscriptions.includes(p.identifier)) {
// set the user as paid
}
return purchaserInfo
}
catch (e) {
console.error('listenBuy error', e)
}
return null
}
▶️ Abonnementstatus überprüfen
Sie können diese Methode immer dann verwenden, wenn Sie den aktuellen Status benötigen, und es ist sicher, diese Methode wiederholt während des Lebenszyklus Ihres Apps aufzurufen. Käufe automatisch den neuesten Status im Cache speichert CustomerInfo sobald es aktualisiert wird — also in den meisten Fällen, wird diese Methode aus der Cache abgerufen und läuft sehr schnell.
Es ist üblich, diese Methode aufzurufen, wenn man entscheidet, welche Benutzeroberfläche dem Benutzer angezeigt werden soll, und sobald der Benutzer eine Aktion durchführt, die eine bestimmte Berechtigungsebene erfordert.
📘
💡 Hier ist ein Tip!
Sie können mehr Informationen über eine Abonnement als nur, ob es aktiv ist oder nicht, abrufen. Siehe die RevenueCat-Anleitung zu Abonnementstatus um zu erfahren, ob das Abonnement sich erneuern lässt, ob es bei der Benutzerkreditkarte ein Problem gibt und mehr.
RevenueCat ermöglicht es Ihren Benutzern, ihre In-App-Käufe wiederherzustellen, indem sie alle Inhalte wieder aktivieren, die sie zuvor von dem selben Ladenkonto (Apple, Google oder Amazon-Konto) gekauft haben. Wir empfehlen allen Apps, dass sie eine Möglichkeit für die Benutzer haben, den Wiederherstellungsprozess auszulösen. Beachten Sie, dass Apple einen Wiederherstellungsmechanismus erfordert, wenn ein Benutzer Zugriff auf seine Käufe verliert (z.B. wenn er die App uninstaliert und neu installiert oder seine Kontoinformationen verliert).
const res = await CapacitorPurchases.restoreTransactions()
const purchaserInfo = res.purchaserInfo
const ids: string[] = [] // extract active subscriptions ids
purchaserInfo.activeSubscriptions.forEach((id) => {
ids.push(id)
})
Wenn zwei verschiedene Benutzer IDs Wiederherstellungstransaktionen aus demselben zugrunde liegenden Ladenkonto (Apple, Google oder Amazon-Konto) durchführen. RevenueCat kann versuchen, zwischen den beiden Benutzer IDs einen Alias zu erstellen und sie als denselben Benutzer zu zählen. Siehe die RevenueCat-Anleitung zu Restoring Purchases für weitere Informationen zu den verschiedenen konfigurierbaren Wiederherstellungsverhaltensweisen.
Da sich SDK reibungslos auf jedem Plattform betätigt, können Änderungen an den Kaufinformationen eines Benutzers aus verschiedenen Quellen stammen. Sie können auf jede Änderung bei den Kaufinformationen eines Kunden CustomerInfo durch die Einhaltung eines optionalen Delegate-Methode reagieren. purchases:receivedUpdated:.
Diese Methode wird ausgelöst, sobald SDK ein aktualisiertes CustomerInfo Objekt von Aufrufen an getCustomerInfo(), purchase(package:), purchase(product:), oder restorePurchases().
Kundeninformationen werden nicht an Ihre App von der RevenueCat-Hintergrundanwendung geschickt, Updates können nur durch einen Ausgangsnetzwerkaufruf an RevenueCat erfolgen, wie oben erwähnt.
Je nach Ihrer App mag es ausreichend sein, die Delegate zu ignorieren und einfach Änderungen an den Kundeninformationen beim nächsten Mal, wenn Ihre App gestartet wird oder in den Abschlussblöcken der SDK-Methoden zu behandeln.
CapacitorPurchases.addListener('purchasesUpdate', (data) => {
console.log('purchasesUpdate', data)
})
👍
Sie haben es geschafft!
Sie haben jetzt ein vollwertiges Abonnement-Kaufsystem implementiert, ohne einen Monat damit zu verbringen, den Server code zu schreiben. Gratulation!
Beispiel-Apps
Um mehr vollständige Beispiele für die Integration des SDK herunterzuladen, besuchen Sie die Ressourcen für RevenueCat-Beispielanwendungen.
Ich werde bald ein Beispiel-App mit Capacitor und Vue.js veröffentlichen.
Wenn Sie eine tiefe Verwendung des Capacitor SDK benötigen, überprüfen Sie die Dokumentation hier.
Nächste Schritte
\
- Wenn Sie das noch nicht getan haben, stellen Sie sicher, dass Ihre Produkte korrekt konfiguriert sind, indem Sie die RevenueCat-Anleitung zu Berechtigungen lesen. Wenn Sie eigene Benutzeridentifikatoren verwenden möchten, lesen Sie sich durch.
- die Anleitung zur Einstellung von App-Benutzer-IDs']} Beispiel-Apps .
- Wenn Sie von einem anderen System zu RevenueCat wechseln, sehen Sie sich die Anleitung von RevenueCat zu der Migration Ihrer bestehenden Abonnements an.
- Wenn Sie bereit sind, Ihre Integration zu testen, können Sie sich die Anleitungen von RevenueCat zu Testen und Fehlersuche ansehen.
- Wenn Sie für das App Store Small Business Programm qualifiziert sind, schauen Sie sich die Anleitung von RevenueCat zu wie Sie sich bewerben und RevenueCat informieren können
Wenn Sie Live-Updates in Ihrer App benötigen
Joinen Sie sich hier 👇
Hier registrieren Sie sich, um Ihr Konto zu erhalten
Fortsetzen Sie von den In-App-Käufen für capacitor
Wenn Sie RevenueCat verwenden In-App-Käufe für capacitor Um Zahlungen und Käufe zu planen, verbinden Sie es mit Capgo Preisgestaltung Für den Produktworkflow in Capgo Preisgestaltung, Zahlungssystem Für die Implementierungsdetails in Zahlungssystem, @capgo/native-purchases Für die Implementierungsdetails in @capgo/native-purchases, Einstieg Für die Implementierungsdetails in Einstieg, und Revenue Playbook Für die Implementierungsdetails in Revenue Playbook.