Kotlin Multiplatform SDKでウェブペイウォールを実装する

始める前に、ダッシュボードでウェブペイウォールを設定し、Adapty SDK バージョン3.15以降をインストールしていることを確認してください。

ウェブペイウォールを開く

自分で開発したペイウォールを使用している場合は、SDK メソッドを使ってウェブペイウォールを処理する必要があります。openWebPaywall メソッドは以下を行います。

  1. Adapty が特定のユーザーに表示されたペイウォールと、リダイレクト先のウェブページを紐づけるための一意の URL を生成します。
  2. ユーザーがアプリに戻ったタイミングを検知し、短い間隔で getProfile をリクエストして、プロファイルのアクセス権が更新されたかどうかを確認します。

これにより、支払いが成功してアクセス権が更新された場合、アプリ内でほぼ即座にサブスクリプションが有効になります。

ユーザーがアプリに戻った後、プロファイルの更新を反映するためにUIを更新してください。AdaptyはプロファイルのUpdateイベントを受信して処理します。


viewModelScope.launch {
    Adapty.openWebPaywall(product = product).onSuccess {
        // the web paywall was opened successfully
    }.onError { error ->
        // handle the error
    }
}

openWebPaywall メソッドには2つのバージョンがあります:

  1. openWebPaywall(product = product) — ペイウォールごとにURLを生成し、プロダクトデータもURLに追加します。
  2. openWebPaywall(paywall = paywall) — ペイウォールごとにURLを生成しますが、プロダクトデータはURLに追加しません。Adapty ペイウォールのプロダクトとウェブペイウォールのプロダクトが異なる場合に使用してください。

SDK v4 では、paywall パラメーターは flowPaywall パラメーターに置き換えられ、flow.paywalls 内のペイウォールバリアントの一つである AdaptyFlowPaywall を受け取ります。詳細は移行ガイドを参照してください。

ウェブペイウォールをアプリ内ブラウザで開く

デフォルトでは、ウェブペイウォールは外部ブラウザで開きます。

シームレスなユーザー体験を提供するために、ウェブペイウォールをアプリ内ブラウザで開くことができます。これにより、アプリを切り替えることなく、アプリ内でウェブ購入ページが表示され、ユーザーはそのまま取引を完了できます。

この機能を有効にするには、openIn パラメーターを AdaptyWebPresentation.IN_APP_BROWSER に設定します。


viewModelScope.launch {
    Adapty.openWebPaywall(
        product = product,
        openIn = AdaptyWebPresentation.IN_APP_BROWSER // default – EXTERNAL_BROWSER
    ).onSuccess {
        // the web paywall was opened successfully
    }.onError { error ->
        // handle the error
    }
}