ユーザーがアプリ内購入を行うときにグローバル変数を設定する必要があります。NSUserDefaultsを使用して、「Purchased」というキーを使用することもできますが、それはあまり安全ではないようです。
ユーザーが購入したかどうかを知るためにデータを安全に保存するための最良の方法は何ですか?
たとえば、特定のビューでは、「購入」ボタンを表示するかどうかを知る必要があります。明らかに、彼らがすでに購入した場合、それは隠されるべきです。
ユーザーがアプリ内購入を行うときにグローバル変数を設定する必要があります。NSUserDefaultsを使用して、「Purchased」というキーを使用することもできますが、それはあまり安全ではないようです。
ユーザーが購入したかどうかを知るためにデータを安全に保存するための最良の方法は何ですか?
たとえば、特定のビューでは、「購入」ボタンを表示するかどうかを知る必要があります。明らかに、彼らがすでに購入した場合、それは隠されるべきです。
安全なデータには、iOS キーチェーンを使用する必要があります。ドキュメントは次のとおりです。
お役に立てれば。
その情報を保存する必要はありません。すべてのユーザー購入を復元する方法があります。restoreCompletedTransactionsを探します。
ビューですべてのユーザーの購入を確認してから、まだ購入できるすべてのアイテムの[購入]ボタンを表示できます。
更新:
おー!私はあなたの質問を誤解しました。上記の方法では、たとえばアプリを再インストールした場合にユーザーが行った購入を取得できます。あなたの質問に関しては、購入した製品に関連する情報を保存しNSUserDefaults
て、ユーザーに商品、レベル、または彼が支払ったものを提供することはまったく問題ありません。
すべての質問に答えるためにアプリ内購入を実装するのに役立つこのステップバイステップのチュートリアルをお勧めします。