Dieses Plugin wurde nun in den offiziellen 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 In-App-Käufe auf iOS und Android ermöglicht. 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 -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 bietet und Aufgaben wie die Validierung von Rechnungen und die Benutzerverwaltung automatisiert.
Mit RevenueCat können Entwickler leicht Abonnements verwalten, den Umsatz verfolgen und andere damit verbundene Aufgaben durchführen. Einige Funktionen, die von RevenueCat angeboten werden, sind:
- Automatisierte Rechnungsvalidierung
- Benutzerverwaltung
- Support für benutzerdefinierte Preismodelle
- Detaillierte Analysen -Skalierbarkeit
Indem Entwickler das Capacitor-Käufe-Plugin mit RevenueCat verwenden, können sie 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 Kauf-Plugin und RevenueCat können Entwickler Einnahmen und Abonnements in ihren Apps leicht verwalten und tracken, Empfänger bestätigen und Benutzer über mehrere Plattformen verwalten. Es ermöglicht auch die Erstellung benutzerdefinierter Preismodelle und die Gewinnung detaillierter Analysen, um die Leistung und Einnahmen zu verbessern.
Installation
Stellen Sie sicher, dass Sie die neueste Version von Capacitor und dem Capacitor Kauf-Plugin verwenden. Sie können die neueste Version von Capacitor und dem Capacitor Kauf-Plugin auf der Capacitor-Website überprüfen.
Um das Capacitor Kauf-Plugin zu installieren, führen Sie den folgenden Befehl aus:
npm i @capgo/capacitor-purchases
Fügen Sie das Plugin zu Ihrer App-native code hinzu
npx cap sync
Fügen Sie die in-App-Einkaufsfähigkeit in Xcode hinzu:
Dann

1. Erstellen Sie ein RevenueCat-Konto
Diese Anleitung führt Sie durch die Einrichtung von Abonnements und RevenueCat’s SDK mit nur wenigen Zeilen code.
Registrieren Sie sich für ein neues RevenueCat-Konto hier.
📘
💡 Hier ist ein Tip!
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 / Enterprise
Wir empfehlen, einen Unternehmens-Account zu verwenden, wenn Sie sich bei RevenueCat anmelden und Ihre App innerhalb eines Projekts einrichten. Sie können den Rest Ihres Teams als Mitwirkende zu Ihrem Projekt einladen, aber nur der Projektleiter kann die Rechnungsbearbeitungverwalten. Projekt-Mitwirkende können keine Rechnungsdetails bearbeiten.
2. Projekt- und App-Konfiguration
▶️ Ein Projekt erstellen
Navigieren Sie zum RevenueCat-Dashboard und ein neues Projekt hinzufügen aus dem Dropdown-Menü in der oberen Navigationsoptionen genannt Projekte.

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

Projekt-Dashboard für die Auswahl der App-Plattform
Das Feld Appname 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 gemeinsame Geheimcode (iOS) / Dienstzertifikate (Android) konfiguriert werden. Schritt 3 bei RevenueCat

💡 Hier ist ein Tip!
📘
Nach der Registrierung Ihrer App empfiehlt RevenueCat die Einrichtung von
Plattformserverbenachrichtigungen . Diese Benachrichtigungen sind nicht erforderlich, aber sie beschleunigenWebhooks 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.
App name
Jeder RevenueCat-App kann sowohl Sandbox- als auch Produktionskäufe aus den Stores machen. Wenn Sie separate Apps für Staging und Produktionsumgebung haben, können Sie mehrere Projekte in RevenueCat erstellen, um Ihr Setup zu spiegeln.
Darüber hinaus werden die Benutzer nicht durch die Umgebung getrennt. Der gleiche Benutzer kann sowohl aktive Sandbox-Käufe als auch aktive Produktionskäufe gleichzeitig haben.
▶️ Dienstzertifikate
Dienstzertifikate müssen für RevenueCat eingerichtet werden, damit es mit den App-Stores auf Ihrer Seite kommunizieren kann. Siehe die RevenueCat-Anleitungen App Store Connect-Shared-Secret, Play Service-Zertifikateund Amazon Appstore-Shared-Secret für weitere Informationen.
Hinweis, dass Play-Service-Zertifikate bis zu 36 Stunden, um sich durch Google’s Server zu verbreiten.
3. Produktkonfiguration
▶️ Store-Einrichtung
Bevor Sie mit der Nutzung von RevenueCat beginnen können, um Produkte abzurufen, müssen Sie Ihre Produkte in den jeweiligen Stores konfigurieren. Siehe die folgenden Anleitungen für App Store Connect, Google Play Console, Amazon Appstore, und Stripe für Hilfe bei der Navigation durch diesen Prozess.
Wenn Sie iOS-Produkte verkaufen, stellen Sie sicher, dass Sie Ihr 'Paid Applications Agreement' unterzeichnen und Ihre Bank- und Steuerinformationen in App Store Connect > Vereinbarungen, Steuern und Banking. dieses muss vor dem Testen von Kaufvorgängen abgeschlossen sein..
📘
Möchten Sie die Store-Einrichtung während des Testens 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 Leitfaden.
▶️ Produkte und Berechtigungen in RevenueCat konfigurieren
Sobald Ihre In-App-Produkte in App Store Connect, Google Play Console, Amazon Appstoreoder Stripehaben Sie, müssen Sie die 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 die Verwendung dieser Funktionen, um Ihre __CAPGO_KEEP_0__ zu vereinfachen und Ihnen zu ermöglichen, Produkte ohne eine App-Update-Veröffentlichung zu ändern. utilizing these features to simplify your code and enable you to change products without releasing an app update.
Produkte konfigurieren um Ihre Produkte einzurichten und sie dann in Angebote oder Entgeltberechtigungen zu organisieren. Schritt 4 von RevenueCat

RevenueCat SDK implementiert Einkäufe und Abonnements auf Plattformen reibungslos und synchronisiert Token mit dem RevenueCat-Server.
Wenn Sie mit dem SDK Probleme haben, sehen Sie
If you run into issues with the SDK, see für Anweisungen. Verwenden Sie nur Ihre öffentliche __CAPGO_KEEP_0__-Schlüssel, um Einkäufe zu konfigurieren.
📘
Only use your public SDK key to configure Purchases
Sie können Ihre öffentliche SDK-Schlüssel aus der API-Schlüssel Registerkarte unter Projekt-Einstellungen im Dashboard.
Sie sollten die gemeinsame Instanz von Purchases nur einmal konfigurieren, meistens bei der App-Start. Anschließend wird die gleiche Instanz in Ihrem App durch Zugriff auf die .shared Instanz in der SDK
weitergegeben. Configuring SDK Konfiguration von __CAPGO_KEEP_0__
Stellen Sie sicher, dass Sie die Konfiguration Einkäufe mit Ihrem öffentlichen SDK-Schlüssel nur verwenden. Sie können mehr über die verschiedenen API-Schlüssel in RevenueCat lesen Authentifizierungsleitfaden.
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_******'})
}
Wenn Sie in der Entwicklung sind, empfiehlt RevenueCat die Aktivierung von ausführlicheren Debug-Protokollen. Weitere Informationen zu diesen Protokollen finden Sie in ihrem Debugging Leitfaden.
Wenn Sie beabsichtigen, RevenueCat neben Ihrem bestehenden Einkaufs-code zu verwenden, beziehen Sie sich auf ihren Leitfaden zu Beobachtermodus.
📘
Konfiguration von Einkäufen mit Benutzer-IDs
Wenn Sie ein Benutzerauthentifizierungssystem in Ihrer App haben, können Sie einen Benutzeridentifier bei der Konfiguration oder zu einem späteren Zeitpunkt mit einem Aufruf an
.logIn()Weitere Informationen finden Sie im Leitfaden von RevenueCat zu Benutzer identifizieren.
Der SDK wird die konfigurierten Angebote automatisch abrufen und die Produktinformationen von Apple, Google oder Amazon abrufen. So werden bereits verfügbare Produkte geladen, wenn Kunden Ihre Kaufseite starten. Konfigurierte Angebote Hier ist ein Beispiel für die Abfrage von Angeboten. Sie können Angebote verwenden, um Ihre Zahlungsschaltfläche zu organisieren. Weitere Informationen und Best Practices finden Sie im RevenueCat-Leitfaden zu
Produkte anzeigen ▶️ 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
📘
mehr erfahren, besuchen Sie den RevenueCat-Leitfaden zu
Benutzer identifizieren
.logIn()__CAPGO_KEEP_0__ __CAPGO_KEEP_0__.
Die SDK wird die konfigurierten Angebote automatisch abrufen und die Produktinformationen von Apple, Google oder Amazon abrufen. Daher werden bereits verfügbare Produkte geladen, wenn Kunden Ihre Kaufseite starten. Konfigurierte Angebote Wenn Kunden Ihre Kaufseite starten, werden bereits verfügbare Produkte geladen.
Hier ist ein Beispiel für die Abfrage von Angeboten. Sie können Angebote verwenden, um Ihre Zahlungsschaltfläche zu organisieren. Weitere Informationen und Best Practices finden Sie im RevenueCat-Leitfaden zu "Produkte anzeigen". Wenn die Abfrage Ihrer Angebote
const { offerings } = await CapacitorPurchases.getOfferings()
if (offerings.current !== null) {
// Display current offering with offerings.current
}
Produkte oder verfügbaren, Paketeleer sind, liegt es an einer Konfigurationsproblematik im jeweiligen Store. Angebote Produkte
The häufigsten Gründe für dieses Problem in App Store Connect sind ein veraltetes 'Zahlungspflichtiges Anwendungsabkommen' oder Produkte, die sich nicht zumindest im 'Zur Veröffentlichung Bereit' Zustand befinden. In GooglePlay tritt dies normalerweise auf, wenn die App nicht auf einem geschlossenen Track veröffentlicht ist und ein gültiger Testnutzer hinzugefügt wurde.
Sie finden weitere Informationen zum Beheben dieses Problems im RevenueCat Hilfezentrum.
▶️ Kauf abschließen
Das SDK enthält eine einfache Methode zur Vereinfachung von Kaufvorgängen. Das purchase:package nimmt ein Paket aus der abgerufenen Angebotsliste und verarbeitet den Kauf mit dem entsprechenden App-Store.
Das code-Beispiel unten zeigt den Kaufprozess eines Pakets und die Bestätigung, dass es die 'your_entitlement_id' Inhalte freischaltet. Weitere Details zur purchase:package Methode finden Sie im RevenueCat-Leitfaden zum Thema Kaufvorgänge abschließen.
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
}
▶️ Abonnement-Status überprüfen
Sie können diese Methode immer wieder aufrufen, wenn Sie den aktuellen Status benötigen, und es ist sicher, diese Methode während des Lebenszyklus Ihrer App wiederholt aufzurufen. Purchases __CAPGO_KEEP_0__ automatisch den neuesten CustomerInfo wenn es sich aktualisiert — also in den meisten Fällen, zieht diese Methode aus der Cache und läuft sehr schnell.
Es ist üblich, diese Methode zu verwenden, wenn man entscheidet, welche UI dem Benutzer angezeigt werden soll, und wenn 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 reaktivieren, 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 eine Wiederherstellungsmechanismen anfordert, falls ein Benutzer Zugriff auf seine Käufe verliert (z.B. wenn er das App uninstalieren/reinstallieren muss, seine Kontoinformationen verliert, usw.).
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 App-Benutzer-IDs Wiederherstellen von Transaktionen aus demselben zugrunde liegenden Speicheraccount (Apple, Google oder Amazon-Konto). RevenueCat kann versuchen, zwischen den beiden App-Benutzer-IDs einen Alias zu erstellen und sie als denselben Benutzer weiterzuzählen. Siehe die RevenueCat-Anleitung zu Wiederherstellen von Kaufs , um mehr Informationen zu den verschiedenen konfigurierbaren Wiederherstellungsverhaltensweisen zu erhalten.
Da sich SDK reibungslos auf jedem Plattform verhält, können Änderungen an einem Benutzers Kaufinformationen aus verschiedenen Quellen stammen. Sie können auf jede Änderung in einem Kunden CustomerInfo durch die Implementierung eines optionalen Delegate-Methode reagieren, purchases:receivedUpdated:.
Diese Methode wird ausgelöst, wenn SDK ein aktualisiertes CustomerInfo Objekt von Aufrufen an getCustomerInfo(), purchase(package:), purchase(product:), oder restorePurchases().
CustomerInfo-Updates werden nicht von der RevenueCat-Hintergrundanwendung an Ihr App weitergegeben, Updates können nur durch einen Ausgangsnetzwerkaufruf an RevenueCat erfolgen, wie oben erwähnt.
Je nach Ihrer App kann es ausreichen, den Delegate zu ignorieren und einfach Änderungen an Kundeninformationen beim nächsten Start Ihrer App oder in den Abschlussblöcken der SDK-Methoden zu behandeln.
CapacitorPurchases.addListener('purchasesUpdate', (data) => {
console.log('purchasesUpdate', data)
})
👍
Du hast es geschafft!
Du hast 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, besuche bitte die RevenueCat-Beispielanwendungsressourcen.
Ich werde bald ein Beispiel-App mit Capacitor und Vue.js veröffentlichen.
Wenn Sie tiefe Verwendung des Capacitor benötigen, SDK überprüfen Sie bitte 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 besuchen. Wenn Sie Ihre eigenen Benutzeridentifikatoren verwenden möchten, lesen Sie mehr.
- Wenn Sie Ihre eigenen Benutzeridentifikatoren verwenden möchten, lesen Sie mehr Benutzer-IDs in der App einrichten .
- Wenn Sie von einem anderen System auf RevenueCat wechseln, sehen Sie sich die RevenueCat-Anleitung zu der Migration Ihrer bestehenden Abonnements an Wenn Sie bereit sind, Ihre Integration zu testen, können Sie sich die RevenueCat-Anleitungen zu Testen und Fehlersuche ansehen.
- Wenn Sie für das App-Store-Programm für kleine Unternehmen qualifizieren, sehen Sie sich die RevenueCat-Anleitung zu der Antragstellung und der Benachrichtigung von RevenueCat an Wenn Sie Live-Updates in Ihrer App benötigen.
- Hier können Sie sich anmelden 👇 Hier können Sie sich registrieren, um Ihr Konto zu erhalten
__CAPGO_KEEP_0__
Fortsetzen Sie mit In-App-Käufen für __CAPGO_KEEP_0__
Benutzer-IDs in der App einrichten
Keep going from in app purchases for capacitor
Wenn Sie für capacitor In-App-Käufe verwenden um Zahlungen und Käufe zu planen und zu verwalten, 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 im Revenue Playbook.