Capacitor SDK'da özel paywall'unuzda satın almaları etkinleştirin
Bu kılavuz, Adapty’yi özel paywalllarınıza nasıl entegre edeceğinizi açıklar. Adapty SDK ürünleri getirirken, yeni satın almaları işlerken ve önceki satın almaları geri yüklerken paywall uygulaması üzerinde tam kontrol sizde kalır. Bu kılavuz, Adapty Capacitor SDK v4 API’lerini kullanır — v3 kullanıyorsanız, ilgili metod adları için migration kılavuzuna bakın.
Bu kılavuz, özel paywall uygulayan geliştiriciler içindir. Satın almaları etkinleştirmenin en kolay yolunu istiyorsanız Adapty Paywall Builder’ı kullanın. Paywall Builder ile paywallları kod yazmadan görsel bir editörde oluşturursunuz, Adapty tüm satın alma mantığını otomatik olarak yönetir ve uygulamanızı yeniden yayınlamadan farklı tasarımları test edebilirsiniz.
Başlamadan önce
Ürünleri ayarlayın
Uygulama içi satın almaları etkinleştirmek için üç temel kavramı anlamanız gerekir:
- Ürünler – kullanıcıların satın alabileceği her şey (abonelikler, consumable’lar, süresiz erişim)
- Paywalls – hangi ürünlerin sunulacağını tanımlayan yapılandırmalar. Adapty’de ürünlere yalnızca paywall’lar aracılığıyla ulaşılır; bu tasarım sayesinde uygulama koduna dokunmadan ürünleri, fiyatları ve teklifleri değiştirebilirsiniz. SDK v4’te bir placement için paywall varyantları bir flow nesnesi tarafından taşınır — bir flow çekip ürünlerini sorgularsınız.
- Placement’lar – uygulamanızda paywall’ları nerede ve ne zaman göstereceğiniz (
main,onboarding,settingsgibi). Kontrol panelinde placement’lar için paywall’lar ayarlarsınız, ardından kodunuzda placement ID’si ile bunları talep edersiniz. Bu yapı A/B testi yapmayı ve farklı kullanıcılara farklı paywall’lar göstermeyi kolaylaştırır. Özel paywall kullanıyor olsanız bile bu kavramları anladığınızdan emin olun. Temel olarak bunlar, uygulamanızda sattığınız ürünleri yönetme yönteminizdir.
Özel paywallınızı uygulamak için bir paywall oluşturmanız ve bunu bir placement’a eklemeniz gerekir. Bu kurulum, ürünlerinizi almanıza olanak tanır. Kontrol panelinde ne yapmanız gerektiğini anlamak için buradaki hızlı başlangıç kılavuzunu takip edin.
Kullanıcıları yönetin
Kendi tarafınızda backend kimlik doğrulamasıyla veya olmadan çalışabilirsiniz.
Ancak Adapty SDK, anonim ve tanımlanmış kullanıcıları farklı şekilde ele alır. Ayrıntıları anlamak ve kullanıcılarla doğru şekilde çalıştığınızdan emin olmak için kimlik belirleme hızlı başlangıç kılavuzunu okuyun.
Adım 1. Ürünleri alın
Özel paywall’ınız için ürünleri almak üzere şunları yapmanız gerekir:
- placement ID’sini
getFlowmetoduna geçirerekflownesnesini alın. - Bu flow için ürünler dizisini
getPaywallProductsmetodunu kullanarak alın.
async function loadPaywall() {
try {
const flow: AdaptyFlow = await adapty.getFlow({
placementId: 'YOUR_PLACEMENT_ID'
});
const products: AdaptyPaywallProduct[] = await adapty.getPaywallProducts({
flow
});
// Use products to build your custom paywall UI
} catch (error) {
// Handle the error
}
}
Adım 2. Satın almaları kabul edin
Kullanıcı özel paywallınızda bir ürüne dokunduğunda, seçilen ürünle birlikte makePurchase metodunu çağırın. Bu işlem satın alma akışını yönetir ve güncellenmiş profili döndürür.
async function purchaseProduct(product: AdaptyPaywallProduct) {
try {
const result: AdaptyPurchaseResult = await adapty.makePurchase({ product });
if (result.type === 'success') {
// Purchase successful, profile updated
} else if (result.type === 'user_cancelled') {
// User canceled the purchase
} else if (result.type === 'pending') {
// Purchase is pending (e.g., user will pay offline with cash)
}
} catch (error) {
// Handle the error
}
}
Adım 3. Satın almaları geri yükleyin
Uygulama mağazaları, abonelik içeren tüm uygulamaların kullanıcıların satın almalarını geri yükleyebileceği bir yol sunmasını şart koşar.
Kullanıcı geri yükleme düğmesine dokunduğunda restorePurchases metodunu çağırın. Bu işlem, satın alma geçmişini Adapty ile senkronize eder ve güncellenmiş profili döndürür.
async function restorePurchases() {
try {
const profile: AdaptyProfile = await adapty.restorePurchases();
// Restore successful, profile updated
} catch (error) {
// Handle the error
}
}
4. Adım. Abonelik durumunu kontrol edin
Bir satın alma veya geri yükleme işleminin ardından, paywall gösterip göstermeyeceğinize ya da ücretli özellikleri açıp açmayacağınıza karar vermek için kullanıcının access level durumunu kontrol edin. makePurchase ve restorePurchases metotları güncellenmiş profili zaten döndürür; uygulamanın başka bir yerinde mevcut duruma ihtiyaç duyduğunuzda getProfile metodunu kullanın:
async function hasPremiumAccess(): Promise<boolean> {
try {
const profile = await adapty.getProfile();
return profile.accessLevels?.['premium']?.isActive ?? false;
} catch (error) {
// Handle the error
}
return false;
}
Abonelik durumunu kontrol etmenin ve gerçek zamanlı güncellemeleri dinlemek dahil izlemenin daha fazla yolu için bkz. Abonelik durumunu kontrol etme.
Sonraki adımlar
Sorularınız mı var ya da sorunlarla mı karşılaşıyorsunuz? Sık sorulan soruların yanıtlarını bulabileceğiniz veya kendi sorularınızı sorabileceğiniz destek forumumuza göz atın. Ekibimiz ve topluluğumuz yardımcı olmak için burada!
Paywall’ınız uygulamada gösterilmeye hazır. Paywall üzerinden test satın alımı tamamlayabildiğinizi doğrulamak için App Store sandbox veya Google Play Store ortamında satın alımlarınızı test edin. Prodüksiyon ortamına hazır bir uygulamanın nasıl göründüğünü görmek için örnek uygulamamızdaki App.tsx dosyasına göz atın; bu dosyada hata yönetimi, yükleme durumları ve kapsamlı SDK entegrasyonuyla birlikte satın alma işlemleri gösterilmektedir.