Unity SDKでWebペイウォールを実装する
始める前に、ダッシュボードでWebペイウォールを設定し、Adapty SDK バージョン3.14以降をインストールしていることを確認してください。
Webペイウォールを開く
自分で開発したペイウォールを使用している場合は、SDKメソッドでWebペイウォールを処理する必要があります。Adapty.OpenWebPaywallメソッドは以下を行います:
- 特定のユーザーに表示された特定のペイウォールを、リダイレクト先のWebページに紐付けるための一意のURLを生成します。
- ユーザーがアプリに戻ったタイミングを検知し、短い間隔で
Adapty.GetProfileをリクエストして、プロファイルのアクセス権が更新されたかどうかを確認します。
これにより、支払いが成功してアクセス権が更新された場合、サブスクリプションはほぼ即座にアプリ内で有効になります。
Adapty.OpenWebPaywall(
product,
(error) =>
{
if (error != null)
{
Debug.LogError($"Failed to open web paywall: {error.Message}");
}
else
{
Debug.Log("Web paywall opened successfully");
}
}
);
OpenWebPaywallメソッドには2つのバージョンがあります:
OpenWebPaywall(product)— ペイウォールでURLを生成し、プロダクトデータもURLに追加します。OpenWebPaywall(paywall)— プロダクトデータを追加せず、ペイウォールでURLを生成します。AdaptyペイウォールのプロダクトとWebペイウォールのプロダクトが異なる場合に使用してください。
エラーの処理
| エラーコード | 説明 | 推奨アクション |
|---|---|---|
AdaptyErrorCode.WrongParam | ペイウォールまたはプロダクトにWeb購入URLが設定されていない、またはブラウザでURLを開くことができなかった | エラーメッセージで詳細を確認してください。Adapty ダッシュボードでペイウォール/プロダクトの設定を確認するか、デバイスの設定を確認してください。 |
AdaptyErrorCode.DecodingFailed | URLのパラメーターを正しくエンコードできなかった | URLパラメーターが有効で適切な形式になっているか確認してください |
WrongParamは複数の問題(購入URLの欠如、ブラウザを開けないなど)を示す可能性があるため、何が問題だったかの詳細を取得するにはエラーのMessageプロパティを確認してください。
アプリ内ブラウザでWebペイウォールを開く
アプリ内ブラウザでWebペイウォールを開く機能は、Adapty SDK v3.15以降でサポートされています。
デフォルトでは、WebペイウォールはアプリのExternalBrowserで開き、ユーザーはアプリの外に移動します。
シームレスなユーザー体験を提供するために、代わりにアプリ内ブラウザでWebペイウォールを開くことができます。これにより、Web購入ページがアプリ内に表示され、ユーザーはアプリを切り替えることなく取引を完了できます。
これを有効にするには、OpenWebPaywallメソッドにAdaptyWebPresentation.InAppBrowserを渡します:
Adapty.OpenWebPaywall(
product,
AdaptyWebPresentation.InAppBrowser, // default — ExternalBrowser
(error) =>
{
if (error != null)
{
Debug.LogError($"Failed to open web paywall: {error.Message}");
}
else
{
Debug.Log("Web paywall opened successfully");
}
}
);