構造体


Product


App Store Connect であなたが構成する製品に関する情報。


iOS 16.0+ iPadOS 16.0+ macOS 12.0+

tvOS 16.0+ visionOS 1.0+ watchOS 8.0+

struct Product




以下で言及


  あなたのアプリ内で促進されたアプリ内購入をサポートする
(Supporting promoted In-App Purchases in your app)

  あなたのアプリ内でファミリー共有をサポートする
(Supporting Family Sharing in your app)



概観


Product 型は、App Store Connect で構成し、あなたのアプリ内で購入できるようにするアプリ内購入を表します。アプリ内購入や提供の表示から、購入の実行、売買とサブスクリプションの状態情報の取得まで、あなたのアプリ内のすべての製品関連タスクを実行するには、Product を使用します。


Product インスタンスを取得するには、products(for:) を呼び出し、1 つ以上のアプリ内購入製品 ID を指定します。以下のように、あなたのストアでアプリ内購入やサブスクリプション提供を表示するには、Product インスタンスを使用して下さい。


  • displayNamedescriptiondisplayPrice を使用して、ローカライズされた名前、説明、および価格情報をそれぞれ表示します。

  • isEligibleForIntroOffer を使用して、ユーザが製品の入門提供の対象かどうかを判断します。

  • subscription 内のサブスクリプション情報を使用して、あなたのサブスクリプション提供を表示します。

  • ユーザが購入を開始すると、製品インスタンス上の purchase(options:) または purchase(confirmIn:options:) を呼び出します。あなたのアプリで SwiftUI を使用している場合は、PurchaseAction も使用できます。購入オプション (Product.PurchaseOption) を設定して、オプションのアプリアカウントトークンを定義したり、プロモーションの提供を適用したり、製品の数量を設定したりします。購入オプションでは、サンドボックス環境であなたのアプリをテストしているときに、購入の依頼シナリオをシミュレーションすることもできます。


    Product インスタンスを使用して、ユーザに製品の使用権を与える取引を保持する currentEntitlement をチェックすることで、ユーザが製品の使用権を持っているかどうかを確認します。この取引情報と latestTransaction の取引は、JSON Web Signature (JWS) 形式で App Store によって暗号化されて署名されます。


    製品が自動更新可能なサブスクリプションである場合は、subscription 情報内の statusrenewalInfo を使用して、サブスクリプションを管理し、サブスクリプション提供の提示などのビジネス上の意思決定に役立てます。





    トピックス


    App Store から製品を要求する


    static func products<Identifiers>(for: Identifiers) async throws -> [Product]

    App Store から製品データを要求します。


    Product (製品) の説明と価格を表示


    let displayName: String

    製品のローカライズされた表示名(存在する場合)。


    let description: String

    製品のローカライズされた説明。


    let displayPrice: String

    表示に適した、製品価格のローカライズされた文字列表現。


    let price: Decimal

    現地通貨での製品のコストの十進数での表現。


    var priceFormatStyle: Decimal.FormatStyle.Currency

    商品の価格の数字の書式スタイル。


    var subscriptionPeriodFormatStyle: Date.ComponentsFormatStyle

    サブスクリプションの期間に関連する日付コンポーネントの書式スタイル。


    var subscriptionPeriodUnitFormatStyle: Product.SubscriptionPeriod.Unit.FormatStyle

    週、月、年などのサブスクリプション期間単位の書式スタイル。



    製品の購入


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

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


    struct PurchaseOption

    製品購入時のオプション設定。


    enum PurchaseResult

    購入の結果。


    enum PurchaseError

    商品購入エラーに関するエラー情報。



    現在の資格情報の受信


    var currentEntitlement: VerificationResult<Transaction>?

    ユーザに製品の使用権を与える取引。



    最新の取引を取得


    var latestTransaction: VerificationResult<Transaction>?

    製品の最新の取引。



    サブスクリプション情報の取得


    let subscription: Product.SubscriptionInfo?

    自動更新サブスクリプションのサブスクリプション情報。


    struct SubscriptionInfo

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


    struct SubscriptionPeriod

    サブスクリプションの更新間の期間を表す値。


    struct SubscriptionOffer

    App Store Connect であなたが構成するサブスクリプション提供に関する情報。


    struct Status

    自動更新サブスクリプションの更新ステータス情報。



    製品の ID と型を取得


    let id: String

    一意の製品 ID。


    let type: Product.ProductType

    アプリ内購入の製品の型。


    struct ProductType

    アプリ内購入の型。



    ファミリー共有状況の取得


    let isFamilyShareable: Bool

    製品が App Store Connect のファミリー共有で利用可能かどうかを示すブール値。



    販売促進されたアプリ内購入の管理


    struct PromotionInfo

    デバイス上での順序と表示をカスタマイズする、販売促進対象のアプリ内購入に関する情報。



    製品のロード中


    enum CollectionTaskState

    バックグラウンドで製品のコレクションをロードするタスクの状態。


    enum TaskState

    バックグラウンドで製品をロードするタスクの状態。



    JSON 形式で製品情報を取得


    var jsonRepresentation: Data

    製品情報の JSON 表現。



    サブスクリプション関係の取得


    struct SubscriptionRelationship



    インスタンスメソッド


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

    製品の購入を処理します。


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

    製品の購入を処理します。


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

    製品の購入を処理します。





    関連


    以下に準拠


    Copyable

    CustomDebugStringConvertible

    Equatable

    Hashable

    Identifiable

    Sendable





    以下も見よ


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


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

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


    struct SubscriptionInfo

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














    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ