Kotlin Multiplatform uygulamaları için web üzerinden ödeme kabul etme

Kotlin Multiplatform SDK'da web paywalllarını uygulama

Başlamadan önce kontrol panelinde web paywallınızı yapılandırdığınızdan ve Adapty SDK 3.15 veya sonraki bir sürümünü yüklediğinizden emin olun.

Web paywalllarını açma

Kendi geliştirdiğiniz bir paywall kullanıyorsanız web paywalllarını SDK metoduyla yönetmeniz gerekir. openWebPaywall metodu:

  1. Adapty’nin belirli bir kullanıcıya gösterilen paywall’ı yönlendirildikleri web sayfasıyla ilişkilendirebilmesi için benzersiz bir URL oluşturur.
  2. Kullanıcıların uygulamaya ne zaman döndüğünü izler ve ardından profil erişim haklarının güncellenip güncellenmediğini belirlemek için kısa aralıklarla getProfile ister.

Bu sayede ödeme başarılı olup erişim hakları güncellendiyse abonelik uygulamada neredeyse anında etkinleşir.

Kullanıcılar uygulamaya döndükten sonra profil güncellemelerini yansıtmak için UI’ı yenileyin. Adapty, profil güncelleme etkinliklerini alıp işleyecektir.


viewModelScope.launch {
    Adapty.openWebPaywall(product = product).onSuccess {
        // the web paywall was opened successfully
    }.onError { error ->
        // handle the error
    }
}

openWebPaywall metodunun iki versiyonu bulunmaktadır:

  1. openWebPaywall(product = product) — URL’leri paywall’a göre oluşturur ve ürün verilerini de URL’lere ekler.
  2. openWebPaywall(paywall = paywall) — URL’leri paywall’a göre oluşturur, ancak ürün verilerini URL’lere eklemez. Adapty paywallındaki ürünler web paywallındakilerden farklıysa bunu kullanın.

SDK v4’te paywall parametresinin yerini, flow.paywalls içindeki paywall varyantlarından biri olan AdaptyFlowPaywall alan bir flowPaywall parametresi almıştır. Migrasyon kılavuzuna bakın.

Web paywalllarını uygulama içi tarayıcıda açma

Web paywalllar varsayılan olarak harici tarayıcıda açılır.

Kesintisiz bir kullanıcı deneyimi sunmak için web paywallları uygulama içi tarayıcıda açabilirsiniz. Bu sayede web satın alma sayfası uygulamanız içinde gösterilir ve kullanıcılar uygulama değiştirmeden işlemi tamamlayabilir.

Bunu etkinleştirmek için openIn parametresini AdaptyWebPresentation.IN_APP_BROWSER olarak ayarlayın:


viewModelScope.launch {
    Adapty.openWebPaywall(
        product = product,
        openIn = AdaptyWebPresentation.IN_APP_BROWSER // default – EXTERNAL_BROWSER
    ).onSuccess {
        // the web paywall was opened successfully
    }.onError { error ->
        // handle the error
    }
}