構造体


PurchaseAction


アプリ内購入を開始するアクション。


StoreKit SwiftUIiOS 17.0+ iPadOS 17.0+ Mac Catalyst 17.0+

macOS 14.0+ tvOS 17.0+ visionOS 1.0+ watchOS 10.0+

struct PurchaseAction




概観


StoreKit には、顧客が購入を開始できるように使用できる API がいくつか用意されています。あなたのアプリの実装に適した API を選択してください。具体的には、以下のとおりです。


  • visionOS のマルチシーンアプリなど、SwiftUI を使用するアプリには PurchaseAction を使用して下さい。

  • UIKit を使用するアプリには Product/purchase(confirmIn:options:) を使用します。

  • あなたのアプリが watchOS または macOS で実行される場合は purchase(options:) を使用します。

  • 重要

    ProductViewStoreViewSubscriptionStoreView などの StoreKit ビューを使用する場合は、購入を開始するために他の API を呼び出す必要はありません。StoreKit は、購入確認 UI の表示など、購入アクションを自動的に管理します。詳細については、StoreKit ビュー (StoreKit views) を参照してください。


    購入アクション(purchase action) API の使用


    visionOS のマルチシーンアプリを含む SwiftUI の実装では、purchase(options:) の代わりに PurchaseAction を使用します。インスタンスを呼び出してアプリ内購入を開始します。


    この API を使用するには、PurchaseAction 環境値を読み取り、与えられた Environment の構造体のインスタンスを取得します。インスタンスをあなたが呼び出すと Swift が呼び出す callAsFunction(_:options:) メソッドが定義されているため、インスタンスを直接呼び出して下さい。


    アプリ内購入をあなたが開始すると、システムは顧客に購入の詳細を確認するための UI を表示します。環境からあなたが取得する購入アクションには、UI コンテキストが自動的に含まれます。ビューが表示されるシーンの近くに確認 UI が表示されます。


    以下のコードは、ユーザがボタンをタップしたときにアプリ内購入を開始する例を示しています。


    1. struct PurchaseExample: View {
    2. @Environment(\.purchase) private var purchase: PurchaseAction
    3. let product: Product
    4. let purchaseOptions: [Product.PurchaseOption]
    5. var body: some View {
    6. Button {
    7. Task {
    8. let purchaseResult = try? await purchase(product, options: purchaseOptions)
    9. // Process the purchase result.
    10. }
    11. } label: {
    12. Text(product.displayName)
    13. }
    14. }
    15. }

    コード例の 2 行目では、コンパイラが型を推論できるため、以下のように型名を省略できることに注意してください。


    @Environment(\.purchase) private var purchase




    トピックス


    アクションの呼び出し


    func callAsFunction(Product, options: Set<Product.PurchaseOption>) async throws -> Product.PurchaseResult

    指定された製品と購入オプションのアプリ内購入を開始します。





    製品の購入


    func purchase(options: Set<Product.PurchaseOption>) async throws -> Product.PurchaseResult

    App Store で製品の購入を開始し、確認シートを表示します。


    enum PurchaseResult

    購入の結果。





    以下も見よ


    製品およびサブスクリプション情報


    {} StoreKit API を使用してあなたのアプリにストアを実装する
    (Implementing a store in your app using the StoreKit API)

    署名された取引と状態情報を使用して、アプリ内購入を提供し、権限を管理します。


    struct SubscriptionInfo

    自動更新サブスクリプションに関する情報(状態、期間、サブスクリプショングループ、サブスクリプション提供の詳細など)。














    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ