Mit @capgo/native-purchases
In-App-Abonnements leicht gemacht.
Installieren
bun add @capgo/native-purchases
bunx cap sync
Was diese Plugin-Exposition enthält
restorePurchases- Wiederherstellt einen Benutzers vorherigen und verknüpft ihre appUserIDs mit jeder Benutzer, die auch diese verwenden.getAppTransaction- Holt die App-Transaktionsinformationen, die Details über den Zeitpunkt liefert, an dem der Benutzer das Programm ursprünglich heruntergeladen oder gekauft hat.isEntitledToOldBusinessModel- Vergleicht die ursprüngliche App-Version aus der App-Transaktion mit einer Zielversion, um zu bestimmen, ob der Benutzer berechtigt ist, Funktionen aus einem früheren Geschäftsmodell zu nutzen.getProducts- Lädt Produktmetadaten aus dem Store, einschließlich unterstützter iOS-Abonnementpreisbegriffe.purchaseProduct- Startet den Kaufprozess für das ausgewählte Produkt und die Rechnungsplanung.
Beispielhafte Verwendung
restorePurchases
__CAPGO_KEEP_0__:
import { NativePurchases } from '@capgo/native-purchases';
await NativePurchases.restorePurchases();
getAppTransaction
Wiederherstellt einen Benutzers vorherigen und verknüpft ihre appUserIDs mit jedem Benutzer, der auch diese verwendet.
import { NativePurchases } from '@capgo/native-purchases';
const { appTransaction } = await NativePurchases.getAppTransaction();
// Check if user downloaded before version 2.0.0 (when subscription was added)
if (compareVersions(appTransaction.originalAppVersion, '2.0.0') < 0) {
// User gets free access - they downloaded before subscriptions
grantFreeAccess();
}
isEntitledToOldBusinessModel
Holt die App-Transaktionsinformationen, die Details über den Zeitpunkt liefern, an dem der Benutzer das Programm ursprünglich heruntergeladen oder gekauft hat.
import { NativePurchases } from '@capgo/native-purchases';
// Check if user downloaded before version 2.0.0/build 42 (when subscription was added)
const result = await NativePurchases.isEntitledToOldBusinessModel({
targetVersion: '2.0.0',
targetBuildNumber: '42'
});
if (result.isOlderVersion) {
console.log(`User downloaded v${result.originalAppVersion}, granting free access`);
grantFreeAccess();
}
purchaseProduct
Vergleicht die ursprüngliche App-Version aus der App-Transaktion mit einer Zielversion, um zu bestimmen, ob der Benutzer berechtigt ist, Funktionen aus einem früheren Geschäftsmodell zu nutzen. planIdentifier Startet den Kaufprozess für das angegebene Produkt. Für Android-Abonnements übergeben Sie die Google Play-Base-Plan-ID als billingPlanType: 'monthly'.
import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
await NativePurchases.purchaseProduct({
productIdentifier: 'com.example.premium.monthly',
planIdentifier: 'monthly-plan',
productType: PURCHASE_TYPE.SUBS,
});
Für unterstützte iOS-Abonnements, die monatliche Abrechnung mit einer 12-monatigen Verpflichtung bieten, übergeben Sie
iOS-Monatsverpflichtungsabonnements pricingTerms Auf unterstützten iOS-Versionen kann StoreKit eine monatliche Abrechnungspläne mit einer 12-monatigen Verpflichtung durch
import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
const { products } = await NativePurchases.getProducts({
productIdentifiers: ['com.example.premium.yearly'],
productType: PURCHASE_TYPE.SUBS,
});
const yearlyProduct = products.find(
(product) => product.identifier === 'com.example.premium.yearly',
);
const monthlyCommitment = yearlyProduct?.pricingTerms?.find(
(term) => term.billingPlanType === 'monthly',
);
if (yearlyProduct && monthlyCommitment) {
console.log('Monthly price:', monthlyCommitment.billingDisplayPrice);
console.log('Total commitment:', monthlyCommitment.commitmentInfo?.priceString);
const transaction = await NativePurchases.purchaseProduct({
productIdentifier: yearlyProduct.identifier,
productType: PURCHASE_TYPE.SUBS,
billingPlanType: 'monthly',
});
console.log('Billing plan:', transaction.billingPlanType);
console.log('Commitment ends:', transaction.commitmentInfo?.expirationDate);
}
Zeigen Sie diese Bedingungen auf Ihrem Bezahlwall vor dem Kauf an:
- GitHub: https://github.com/Cap-go/capacitor-native-purchases/
- Dokumentation: /docs/plugins/native-purchases/
- iOS monatliche Verpflichtungshandbuch: /docs/plugins/native-purchases/ios-monthly-commitment/
Weitermachen von Using @capgo/native-purchases
Wenn Sie Using verwenden Using @capgo/native-purchases Um Zahlungen und Kaufsplanungen zu planen, verbinden Sie es mit @capgo/native-purchases für die Implementierungsdetails in @capgo/native-purchases Getting Started für die Implementierungsdetails in Getting Started Capgo Preisgestaltung für den Produktworkflow in Capgo Preisgestaltung Zahlungssystem für die Implementierungsdetails im Zahlungssystem und Einnahme-Handbuch für die Implementierungsdetails im Einnahme-Handbuch.