ユーザー(電子メール)がアプリケーションでアプリ内購入アイテムをすでに購入しているかどうかを確認する方法があるかどうか疑問に思っています。
たとえば、iPhone でアイテムを購入してから、同じ iTunes アカウントで iPad にログインします。アプリケーションは、このユーザーがアイテムを購入したことを認識します。
ありがとう、ホイ
ユーザー(電子メール)がアプリケーションでアプリ内購入アイテムをすでに購入しているかどうかを確認する方法があるかどうか疑問に思っています。
たとえば、iPhone でアイテムを購入してから、同じ iTunes アカウントで iPad にログインします。アプリケーションは、このユーザーがアイテムを購入したことを認識します。
ありがとう、ホイ
多くのアプリケーションで購入済みの復元オプションを使用すると、同じことが起こります。
SKPaymentTransactionStateRestored
購入済みのアイテムを購入しようとしたときにサーバーから取得される定数です。
アプリ内購入に関するこの素晴らしいチュートリアルを確認してください:アプリ内購入
ストア キットには、非消耗品、自動更新サブスクリプション、および無料サブスクリプションのトランザクションを復元する組み込み機能が用意されています。
のメソッドをStoreKit
呼び出すことにより、フレームワークで購入を復元できます。アプリは、ユーザーが以前に購入した各製品のトランザクションを受け取ります。これらのトランザクションを処理し、新しいデバイスで機能のロックを解除したり、コンテンツをダウンロードしたりするだけです。restoreCompletedTransactions
SKPaymentQueue
製品が消耗品 (ゲームのゴールド コイン、ヘルス パックなど) である場合、これは適用されず、自分で購入を追跡する必要があります。
各トランザクションを追跡するサーバーをセットアップする必要があります。また、デバイス間でユーザーを認証する方法を実装する必要があります (電子メールによるサインアップ、Facebook ログインなど)。ユーザーが新しいデバイスにログインすると、サーバーはアプリに何をロック解除/ダウンロードする必要があるかを伝えることができます。