Observerモードでフローを表示する - Unity

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

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

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

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

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

  1. IAdaptyUIObserverModeResolver インターフェースを実装します:

    using System;
    using AdaptySDK;
    
    public class MyObserverModeResolver : IAdaptyUIObserverModeResolver
    {
        public void FlowViewDidInitiatePurchase(
            AdaptyUIFlowView view,
            AdaptyPaywallProduct product,
            Action onStartPurchase,
            Action onFinishPurchase
        )
        {
            onStartPurchase(); // the view shows its loading indicator
            // make the purchase with your own code,
            // then report the transaction to Adapty and call:
            onFinishPurchase(); // the view hides the loading indicator
        }
    
        public void FlowViewDidInitiateRestore(
            AdaptyUIFlowView view,
            Action onStartRestore,
            Action onFinishRestore
        )
        {
            onStartRestore();
            // restore purchases with your own code, then:
            onFinishRestore();
        }
    }

FlowViewDidInitiatePurchase メソッドはユーザーが購入を開始したことを通知し、FlowViewDidInitiateRestore はユーザーがリストアを開始したことを通知します。これに応じてカスタムの購入またはリストアフローをトリガーしてください。

また、購入またはリストアの処理について AdaptyUI に通知するために、以下のコールバックを必ず呼び出してください。これはローダーの表示など、フローの適切な動作に必要です。

コールバック説明
onStartPurchase()購入が開始されたことを AdaptyUI に通知するために呼び出すコールバックです。
onFinishPurchase()購入が完了したことを AdaptyUI に通知するために呼び出すコールバックです。
onStartRestore()リストアが開始されたことを AdaptyUI に通知するために呼び出すコールバックです。
onFinishRestore()リストアが完了したことを AdaptyUI に通知するために呼び出すコールバックです。

フローはコードの実行中も開いたままです。購入またはリストアが成功した後は、自分でフローを閉じてください。

  1. 画面を表示する前にリゾルバーを登録してください:

    Adapty.SetObserverModeResolver(new MyObserverModeResolver());

    リゾルバーが登録されていない場合、フロービューはコードに購入を引き渡す方法がないため、ユーザーが購入ボタンをタップしても何も起こりません。

  2. 通常通りフロービューを作成して表示します。フローを取得してビューを作成し、表示します。追加パラメータは不要です。リゾルバが登録されると、Adapty がレンダリングするすべてのフローやペイウォールの購入・復元がそのリゾルバを経由します。

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