2010-12-28 15 views
4

私はいくつかのアプリ内購入アイテムを実装する予定で、購入情報/データを保存して、顧客が同期したときにiTunesがその情報をバックアップするようにしたいと考えています。 Appleが提供するマニュアルには、これが可能であると書かれていますが、実際にどのように説明しているのかは分かりませんiOS - アプリ内購入データを保存するにはどうすればよいですか?

どのように購入履歴を保存するのですか(各項目にNSStringを付けます)、次回の同期時にiTunesがバックアップするようにしますか?

最後に、このすべてをライブにする前に、これをテストすることをどのように提案しますか?

ありがとうございました。

P.S.今はNSUserDefaultsを使ってこの情報を保存しています。

答えて

9

NSUserDefaultsは、StoreKitの「購入済みアイテムの確認」機能を使用することをお勧めします。アプリ内購入を使用する多くのアプリでは、購入済みの状態を確認するボタンがあります。ユーザーがアプリをアンインストールしてから再インストールするか、別の端末にインストールした場合など、アプリでアプリを再び有効にすることができます。

サンドボックス環境を使用してアプリ内購入をテストできます - iTunes Connectを使用すると、アプリのアプリ内購入のすべてに無料でアクセスできるテスト用iTunes Storeアカウントをセットアップできます。

+0

ありがとうございます。ですから、NSUserDefaultsはiTunesにバックアップされていますか?ドキュメンテーションでは、開発者がNSUserDefaultsを意味する "Application Preferences"に保存した場合、ユーザーがこの情報をバックアップできることが記述されているので尋ねます。再度、感謝します。 – RyanM

+1

うん、NSUserDefaults =アプリの設定。 –

+1

しかし、未修正のデバイス上のフリーツールでファイルを編集することができるため、有効性をチェックすることなく、ユーザー変更可能なファイルに購入などの重要な情報を書き込むことは避けてください – Sirens

4

実際NSUserDefaults

<Application_Home>/Library/Preferences 

下にあり、Libraryディレクトリは、iTunesのでバックアップされます。

アプリの購入データを保存するもう1つの方法は、キーチェーンに保存することです(ほとんどありません)。キーチェーンは安全で、アプリの削除時に予約されるためです。したがって、ユーザーが再びアプリをインストールすると、ユーザーは即座に購入を得ることができます。このリンクを確認してください:Lockbox: Easily Secure Your App’s Sensitive Data

関連する問題