Capacitor SDK'da Observer modunda flow'ları sunma
Observer modu kullanıyorsanız, satın alma mantığından siz sorumlusunuz. Ancak paywall arayüzünü Flow & Paywall Builder’a devredebilirsiniz.
Ekranı builder’da tasarlayın, Adapty SDK onu yerel olarak render eder. Metin, düzen ve fiyatlandırmayı uygulama güncellemesi yapmadan istediğiniz zaman değiştirin.
Bu kılavuz, bir flow’u nasıl sunacağınızı ve satın alma callback’lerini nasıl yöneteceğinizi gösterir. Adapty satın alma işlemlerini sizin için tamamlıyorsa, bunun yerine Flow ve paywall’ları görüntüleme sayfasına bakın.
Başlamadan önce
Gereksinimler:
- Adapty Capacitor SDK 4.1 veya üzeri: Önceki sürümler flow’ları görüntüleyemez. Mevcut bir uygulamayı taşımak için migration kılavuzuna bakın.
observerModetrueolarak ayarlanmış: Capacitor SDK kurulum kılavuzuna bakın.- İlk mağaza entegrasyonu: Adapty’yi App Store ile ve Google Play ile kurun.
- Ürünlere sahip yayımlanmış bir flow: Flow & Paywall Builder’da oluşturun ve ürünleri buna atayın.
- Bir flow placement’ı: Bir placement oluşturun ve flow’unuzu buna atayın.
- Uygulamanızda alınan flow: Göstermeden önce flow’u ve yapılandırmasını alın.
Uygulama
Observer modunda SDK, satın alma işlemlerini sizin adınıza gerçekleştirmez. Kullanıcı, Adapty tarafından oluşturulan bir flow içindeki satın alma veya geri yükleme düğmesine dokunduğunda, SDK sizin onObserverPurchaseInitiated veya onObserverRestoreInitiated olay işleyicinizi çağırır. Satın alma veya geri yükleme işlemini orada kendi kodunuzla gerçekleştirin.
-
Observer modu olay işleyicilerini view üzerinde ayarlayın. Diğer platformlardan farklı olarak, ayrı bir resolver nesnesi yoktur — işleyiciler normal olay işleyicilerinin bir parçasıdır, bu nedenle oluşturduğunuz her view’da bunları ayarlayın:
import { adapty, createFlowView } from '@adapty/capacitor'; const view = await createFlowView(flow); const unsubscribe = await view.setEventHandlers({ onObserverPurchaseInitiated(product, onStartPurchase, onFinishPurchase) { onStartPurchase(); // the view shows its loading indicator myPurchaseApi(product.vendorProductId) .then((transactionId) => adapty.reportTransaction({ transactionId, variationId: flow.variationId }), ) .finally(() => onFinishPurchase()); // the view hides the loading indicator return false; // keep the flow open; dismiss it yourself after success }, onObserverRestoreInitiated(onStartRestore, onFinishRestore) { onStartRestore(); myRestoreApi().finally(() => onFinishRestore()); return false; }, });
onObserverPurchaseInitiated handler, kullanıcının bir satın alma işlemi başlattığını size bildirir; onObserverRestoreInitiated ise kullanıcının bir geri yükleme işlemi başlattığını. Buna yanıt olarak kendi özel satın alma veya geri yükleme flow’unuzu tetikleyin.
Ayrıca, satın alma veya geri yükleme sürecini AdaptyUI’ya bildirmek için aşağıdaki callback’leri çağırmayı unutmayın. Bu, yükleyiciyi göstermek gibi düzgün flow davranışı için gereklidir:
| Callback | Description |
|---|---|
| onStartPurchase() | Satın alma işleminin başladığını AdaptyUI’ya bildirmek için bu callback çağrılmalıdır. |
| onFinishPurchase() | Satın alma işleminin bittiğini AdaptyUI’ya bildirmek için bu callback çağrılmalıdır. |
| onStartRestore() | Geri yükleme işleminin başladığını AdaptyUI’ya bildirmek için bu callback çağrılmalıdır. |
| onFinishRestore() | Geri yükleme işleminin bittiğini AdaptyUI’ya bildirmek için bu callback çağrılmalıdır. |
- Flow görünümünü her zamanki gibi sunun: flow’u alın ve görünümünü oluşturun, ardından sunun. Ekstra parametre gerekmez — handler’lar yalnızca SDK
observerMode: trueile etkinleştirildiğinde tetiklenir.
İşlemi bildirmeyi ve paywall ile ilişkilendirmeyi unutmayın. Aksi takdirde Adapty işlemi tanımaz ve satın almanın kaynak paywall’ını belirleyemez.