iOS SDKでFlow & ペイウォールビルダーを使って課金を有効にする

アプリ内課金を有効にするには、3つの重要な概念を理解する必要があります:

  • プロダクト – ユーザーが購入できるもの(サブスクリプション、消耗型アイテム、永続アクセス)
  • フロー – ノーコードのフロー&ペイウォールビルダーで作成した、プロダクトをユーザーに提示するための画面シーケンス。SDK は getFlow を使って取得します。独自のコードで UI を構築したい場合は、代わりにペイウォールを使用してください。詳しくはペイウォールを手動で実装するを参照してください。
  • プレースメント – アプリ内でフローを表示する場所とタイミング(mainonboardingsettings など)。ダッシュボードでフローをプレースメントに紐付け、コード内ではプレースメント ID で取得します。これにより、A/B テストの実施や異なるユーザーへの異なるフローの表示が簡単に行えます。

Adapty では、アプリ内での購入を有効にする方法を3つ提供しています。アプリの要件に応じて、いずれかを選択してください。

実装方法複雑さ使用するタイミング
Adapty Flow & ペイウォールビルダー✅ 簡単ノーコードビルダーで購入対応済みの完全なフローを作成します。Adapty が自動的にレンダリングし、複雑な購入フロー、レシート検証、サブスクリプション管理をすべて裏側で処理します。
手動で作成したペイウォール🟡 中程度ペイウォールの UI はアプリコードで実装しますが、プロダクトラインナップの柔軟性を保つために Adapty からフローオブジェクトを取得します。ガイドを参照してください。
オブザーバーモード🔴 難しいすでに独自の購入処理基盤があり、それを引き続き使用したい場合に選択します。オブザーバーモードには Adapty での制限があることに注意してください。記事を参照してください。
Important

以下の手順は、Adapty Flow & Paywall Builderで作成したフローの実装方法を説明しています。

ペイウォールのUIを自分でビルドしたい場合は、ペイウォールを手動で実装するを参照してください。

Adapty Flow & Paywall Builderで作成したフローをアプリに表示するには、コード上で次の操作を行うだけです:

  1. フローを取得する: Adaptyからフローを取得します。
  2. 表示するとAdaptyが購入を処理する: アプリ内にビューを表示します。
  3. ボタンのアクションを処理する: ユーザー操作に対するアプリの応答を関連付けます。たとえば、ユーザーがボタンをクリックしたときにリンクを開いたり、フローを閉じたりします。

始める前に

始める前に、以下の手順を完了してください:

  1. Adapty ダッシュボードでアプリを App Store に接続する
  2. Adapty でプロダクトを作成する
  3. フローを作成しプロダクトを追加する
  4. プレースメントを作成し、フローを追加する
  5. アプリのコードに Adapty SDK をインストールして有効化する。このガイドでは Adapty iOS SDK v4 の API を使用します。

1. フローを取得する

フローはダッシュボードで設定されたプレースメントに紐付けられています。プレースメントを使うと、オーディエンスごとに異なるフローを表示したり、A/B テストを実施したりできます。

Adapty Flow & Paywall Builder で作成したフローを取得するには、次の手順を実行します:

  1. getFlow メソッドを使ってプレースメント ID から flow オブジェクトを取得し、ビュー設定が含まれているか確認します。
  2. getFlowConfiguration メソッドを使ってビュー設定を取得します。これには、フローの表示に必要な UI 要素とスタイリングが含まれています。

func loadFlow() async {
    let flow = try await Adapty.getFlow(placementId: "YOUR_PLACEMENT_ID")

    guard flow.hasViewConfiguration else {
        print("Flow doesn't have a view configuration")
        return
    }

    flowConfiguration = try await AdaptyUI.getFlowConfiguration(forFlow: flow)
}

2. フローを表示する

フローの設定が完了したら、あとは数行のコードを追加するだけでフローを表示できます。

Info

フローの表示方法の詳細については、ガイドをご参照ください。

3. ボタンアクションの処理

ユーザーがボタンをタップすると、iOS SDK は購入・復元・フローのクローズ・リンクの開閉を自動的に処理します。

ただし、カスタムまたは事前定義された ID を持つボタンについては、コード側でアクションを処理する必要があります。また、デフォルトの動作をオーバーライドしたい場合もあるでしょう。

たとえば、閉じるボタンの処理方法を以下に示します。UIKit では、.close が発火した際に SDK が自動的にコントローラーを閉じます。カスタムの動作が必要な場合のみオーバーライドしてください。SwiftUI では、isPresented バインディングを自分で false に設定する必要があります。

Tip

ボタンのアクションイベントの処理方法についてはガイドをご覧ください。

次のステップ

Tip

ご質問やお困りのことがあれば、サポートフォーラムをご覧ください。よくある質問への回答を見つけたり、ご自身の質問を投稿することができます。チームとコミュニティがサポートいたします!

フローをアプリで表示する準備ができました。サンドボックスモードで購入をテストして、テスト購入が正常に完了できることを確認してください。

次に、適切なユーザーにフローを表示したり有料機能へのアクセスを付与したりするために、ユーザーのアクセスレベルを確認する必要があります。

完全なコード例

このガイドのすべての手順をアプリに統合する方法を以下に示します。