Satın alma sonuçlarına yanıt verme

Bir satın alma tamamlandığında, Adapty SDK’sı uygulamanızı sonuçla birlikte çağırır. Uygulamanız tepki verene kadar ekranda hiçbir şey değişmez. Uygulamanız paywall’ı kapatabilir, başka bir deneme için açık bırakabilir ya da satın almayı onaylayan ikinci bir flow açabilir.

Builder’da satın alma sonucuna göre dal oluşturulamaz: satın alma tamamlandığında hiçbir tetikleyici çalışmaz ve sonucunu taşıyan hiçbir değişken bulunmaz. Dolayısıyla geçiş, sonucun ulaştığı yer olan kodunuzda yapılmalıdır.

İş üç bölüme ayrılır:

  • Satın alma sonrası flow’u oluşturun ve bunu kendi placement’ına atayın.
  • Uygulama kodunuzda satın alma sonucuna göre dallanın.
  • Başarı durumunda paywallı kapatın ve satın alma sonrası flow’u gösterin.

Başlamadan önce

1. Satın alma sonrası flow’u oluşturun

Flow’u oluşturun. Satın alma işleminin ardından çalıştığı için herhangi bir ürüne ihtiyaç duymaz. Kullanıcıyı uygulamanızın kendi arayüzüne geri göndermek için son ekrana Close Flow eylemli bir buton ekleyin.

Post-purchase flow in the builder with a Thank you screen, the Start button selected, and its On Tap trigger set to the Close Flow action

Flowun birden fazla çıkış yolu olduğunda Custom Action kullanın. Her biri kendi action ID’sine sahip birden fazla düğme oluşturun; böylece uygulamanız Set up now ile Set up later arasındaki farkı anlayabilir.

2. Satın alma sonrası flow’u kendi placement’ına ekleyin

Satın alma sonrası flow’u uygulamanızdan çekmek için onu kendi placement’ına atayın. Flow’unuzun placement’ı bunu yapamaz — bir placement, kitle başına yalnızca bir flow sunar.

  1. Flow’u yayınlayın.
  2. Bir flow placement’ı oluşturun. Placement ID’yi not edin — uygulamanız flow’u çekmek için bunu kullanır.
  3. Satın alma sonrası flow’u yeni placement’a atayın.

3. Satın alma sonucuna göre dallanma

Uygulamanız, satın alma sonucunu iki callback aracılığıyla alır:

  • Completion: Satın alma bir sonuca ulaştı — başarılı oldu, kullanıcı iptal etti ya da ödeme onay bekliyor (örneğin, ebeveyn onayı). Üçünü birbirinden ayırt etmek için sonucun türünü okuyun. Başarı durumunda, sonuç güncellenmiş AdaptyProfile’ı taşır.
  • Failure: Bir hata satın almayı durdurdu ve callback, bir AdaptyError taşır — ödeme kısıtlamaları, geçersiz ürünler, ağ hataları veya işlem doğrulama hataları.

Callback adları ve imzaları: iOS | Android | React Native | Flutter | Unity | Kotlin Multiplatform | Capacitor

Sonuca göre işlem yapın:

  • Başarılı olursa paywallı kapatın, ardından satın alma sonrası flow’u gösterin.
  • İptal, bekleyen ödeme veya hata durumunda paywallı açık bırakın.
Note

Restore işlemi, uygulamayı yeniden yükleyen veya cihaz değiştiren kullanıcıları kapsayan kendi callback’i aracılığıyla rapor edilir. Dönen profilin access level’inin aktif olduğunu doğrulayın, ardından aynı şekilde kapatıp bir flow sunun. Bu callback’i ayrı bir flow’a yönlendirin — satın alma için kullanıcıya teşekkür eden bir ekran, restore için uygun değildir.

4. Satın alma sonrası flow’u yükleyin ve gösterin

Satın alma sonrası flow’u bekletmeden açmak için onu handler içinde değil, paywall ile birlikte önceden çekin. UI yapılandırmasını da isteyin — bu çağrı, flow’un görsellerini arka planda önbelleğe almaya başlatır.

iOS ve Android’de preloadFlows (SDK 4.1+), tek bir çağrıyla birden fazla placement’ı önceden yükler. Yalnızca placement JSON’ını önbelleğe alır; bu nedenle ReturnCacheDataElseLoad fetch policy’siyle birlikte kullanın ve UI yapılandırmasını önceden talep etmeye devam edin.

Flow’ları ve paywall’ları getir: iOS | Android | React Native | Flutter | Unity | Kotlin Multiplatform | Capacitor

Flow’ları ve paywall’ları görüntüle: iOS | Android | React Native | Flutter | Unity | Kotlin Multiplatform | Capacitor