FlutterのSDKでObserverモードのフローを表示する

ビルダーを使ってフローやペイウォールをカスタマイズした場合、モバイルアプリのコード内でそれをレンダリングしてユーザーに表示する方法を気にする必要はありません。そのようなフローやペイウォールには、表示する内容と表示方法の両方が含まれています。

このセクションはオブザーバーモード専用の説明です。オブザーバーモードで作業していない場合は、フローとペイウォールの表示のトピックを参照してください。

この機能を利用するには Adapty Flutter SDK 4.0 以降が必要です。以前はネイティブの iOS および Android SDK でのみ利用可能でした。アップグレードするには移行ガイドをご参照ください。

フローの表示を始める前に(クリックして展開)
  1. Adapty と App Store および Google Play の初期連携を設定します。 2. Adapty SDK をインストールして設定します。observerMode パラメータを true に設定してください。詳しくは Flutter SDK インストールガイド を参照してください。 3. Adapty ダッシュボードで プロダクトを作成 します。 4. ビルダーでフローまたはペイウォールを設定 し、プロダクトを割り当てます。 5. プレースメントを作成し、フローまたはペイウォールを割り当てます。 6. モバイルアプリのコードで フローとその設定を取得します

オブザーバーモードでは、SDKが代わりに購入処理を行いません。ユーザーがAdaptyのフローやペイウォール上で購入ボタンまたは復元ボタンをタップすると、SDKはあなたのAdaptyUIObserverModeResolverを呼び出します。購入や復元の処理は、そこで独自のコードを使って行ってください。

  1. AdaptyUIObserverModeResolverを実装します:
    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 メソッドはユーザーが購入を開始したことを、observerModeDidInitiateRestore はユーザーがリストアを開始したことをそれぞれ通知します。これらに応じて、カスタムの購入またはリストアフローを起動してください。

また、購入またはリストアの処理状況を AdaptyUI に通知するために、以下のコールバックを呼び出すことを忘れないでください。これは、ローダーの表示など、フローを正常に動作させるために必要です。

コールバック説明
onStartPurchase()購入が開始されたことを AdaptyUI に通知するために呼び出すコールバックです。
onFinishPurchase()購入が完了したことを AdaptyUI に通知するために呼び出すコールバックです。
onStartRestore()復元が開始されたことを AdaptyUI に通知するために呼び出すコールバックです。
onFinishRestore()復元が完了したことを AdaptyUI に通知するために呼び出すコールバックです。
  1. スクリーンを表示する前にリゾルバーを登録してください:

    AdaptyUI().setObserverModeResolver(MyObserverModeResolver());
  2. 通常どおりフロービューを作成して表示してください: フローを取得してビューを作成し、その後表示します。追加のパラメーターは不要です — リゾルバーを登録すれば、Adapty がレンダリングするすべてのフローおよびペイウォールの購入・復元がそこを通じて処理されます。

トランザクションを報告してペイウォールと関連付けることを忘れないでください。これを行わないと、Adaptyはトランザクションを認識できず、購入元のペイウォールを特定できません。