Flutter SDK'da Observer modunda flow'ları sunma

Builder’ı kullanarak bir flow veya paywall özelleştirdiyseniz, bunu kullanıcıya göstermek için mobil uygulama kodunuzda render etme konusunda endişelenmenize gerek yoktur. Böyle bir flow veya paywall, hem ne gösterileceğini hem de nasıl gösterileceğini içerir.

Bu bölüm yalnızca Observer mode için geçerlidir. Observer mode’da çalışmıyorsanız, Flow’ları ve paywall’ları görüntüleme konusuna bakın.

Bu özellik Adapty Flutter SDK 4.0 veya sonrasını gerektirir — daha önce yalnızca native iOS ve Android SDK’larında mevcuttu. Yükseltmek için migration kılavuzuna bakın.

Flow’ları sunmaya başlamadan önce (Genişletmek için tıklayın)
  1. Adapty’yi App Store ile ve Google Play ile ilk entegrasyonunu kurun. 2. Adapty SDK’yı kurun ve yapılandırın. observerMode parametresini true olarak ayarladığınızdan emin olun. Flutter SDK kurulum kılavuzuna bakın. 3. Adapty Kontrol Paneli’nde ürünler oluşturun. 4. Builder’larda flow’lar veya paywalllar yapılandırın ve bunlara ürün atayın. 5. Placement’lar oluşturun ve flow’larınızı veya paywalllarınızı bunlara atayın. 6. Mobil uygulama kodunuzda flow’ları ve yapılandırmalarını çekin.

Observer modunda SDK, satın alma işlemlerini sizin adınıza gerçekleştirmez. Kullanıcı Adapty tarafından render edilen bir flow veya paywall’da satın alma ya da geri yükleme butonuna dokunduğunda SDK, AdaptyUIObserverModeResolver’ınızı çağırır — satın alma veya geri yükleme işlemini orada kendi kodunuzla gerçekleştirin.

  1. AdaptyUIObserverModeResolver’ı uygulayın:
    class MyObserverModeResolver extends AdaptyUIObserverModeResolver {
      @override
      void observerModeDidInitiatePurchase(
        AdaptyUIFlowView view,
        AdaptyPaywallProduct product,
        void Function() onStartPurchase,
        void Function() onFinishPurchase,
      ) {
        onStartPurchase(); // the view shows its loading indicator
        // make the purchase with your own code, then:
        onFinishPurchase(); // the view hides the loading indicator
      }
    
      @override
      void observerModeDidInitiateRestore(
        AdaptyUIFlowView view,
        void Function() onStartRestore,
        void Function() onFinishRestore,
      ) {
        onStartRestore();
        // restore purchases with your own code, then:
        onFinishRestore();
      }
    }

observerModeDidInitiatePurchase metodu kullanıcının bir satın alma başlattığını, observerModeDidInitiateRestore ise kullanıcının bir geri yükleme başlattığını size bildirir. 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’a bildirmek için aşağıdaki callback’leri çağırmayı unutmayın. Bu, yükleyiciyi gösterme gibi düzgün flow davranışı için gereklidir:

CallbackAçıklama
onStartPurchase()Satın alma işleminin başladığını AdaptyUI’a bildirmek için bu callback çağrılmalıdır.
onFinishPurchase()Satın alma işleminin tamamlandığını AdaptyUI’a bildirmek için bu callback çağrılmalıdır.
onStartRestore()Geri yükleme işleminin başladığını AdaptyUI’a bildirmek için bu callback çağrılmalıdır.
onFinishRestore()Geri yükleme işleminin tamamlandığını AdaptyUI’a bildirmek için bu callback çağrılmalıdır.
  1. Herhangi bir ekran gösterilmeden önce resolver’ı kaydedin:

    AdaptyUI().setObserverModeResolver(MyObserverModeResolver());
  2. Flow görünümünü her zamanki gibi oluşturun ve gösterin: flow’u alın ve görünümünü oluşturun, ardından gösterin. Ekstra parametre gerekmez — resolver bir kez kaydedildiğinde, Adapty tarafından render edilen her flow veya paywall, satın alma ve geri yüklemeleri bu resolver üzerinden yönlendirir.

İşlemi bildirmeyi ve paywall ile ilişkilendirmeyi unutmayın. Aksi takdirde Adapty işlemi tanımayacak ve satın almanın kaynak paywall’ını belirleyemeyecektir.