0

iOS 6 では、Apple は StoreKit を使用してアプリ内購入用の無料のホストされたコンテンツを提供します。

特にセキュリティの観点から、これの利点を理解したいと思います!

  • ロックを解除する画像のパックがある場合は、画像をアプリで直接ホストするか、ホストされたコンテンツでホストするかを選択できます。ホストされたコンテンツを使用する方が安全ですか? 私のアプリ内購入は、すでに Apple からの領収書を確認しています。
  • ハッキングによってアプリ内の画像が直接ロック解除される可能性はありますか?
  • イメージのパックが 40MB 程度の場合、ホストされているコンテンツをダウンロードすることは、ユーザー エクスペリエンスにとって良い解決策ですか? 3G接続があまり良くない場合、苦痛になる可能性があります...

回答ありがとうございます。

4

1 に答える 1

2

Apple は、ホストされたコンテンツまたはバンドルされたコンテンツをいつ使用するかについて、いくつかのガイダンスを提供しています。In-App Purchase Programming Guide: Delivering Productsから引用しています。

特にほとんどのユーザーがその製品を購入することが予想される場合は、小さなファイル (数メガバイトまで) をアプリに埋め込みます。App Bundle のコンテンツは、ユーザーが購入するとすぐに利用できるようになります。ただし、アプリ バンドルのコンテンツを追加または更新するには、アプリの更新バージョンを提出する必要があります。

必要に応じて、より大きなファイルをダウンロードします。アプリ バンドルからコンテンツを分離することで、アプリの初期ダウンロードを小さく保ちます。たとえば、ゲームの App Bundle に最初のレベルを含め、ユーザーが購入時に残りのレベルをダウンロードできるようにすることができます。アプリがサーバーから製品 ID のリストをフェッチし、アプリ バンドルにハードコードされていないと仮定すると、アプリによってダウンロードされるコンテンツを追加または更新するためにアプリを再送信する必要はありません。

これらは要件ではなくガイダンスであるため、誰かが携帯電話を使用しているときに大量のダウンロード可能なアセットを使用してアプリ内購入を行うと信じる理由がある場合は、それをバンドルすることをお勧めします. ただし、ロックを解除するために購入しない場合、ユーザーのデバイスのスペースが無駄になります。

セキュリティに関しては、ダウンロード オブジェクトに関するセクションにこの注記があります。

注:取引を完了する前に、Apple がホストするすべてのコンテンツをダウンロードしてください。トランザクションが完了すると、そのダウンロード オブジェクトは使用できなくなります。

これは、ダウンロードがトランザクションの内部認証でのみ利用可能であることを意味します (ただし、明示的には述べていません)。これは、Apple の承認が必要であることを意味します。これは、レシートをローカルで確認するよりも実際には安全です (ジェイルブレイクを使用してバイパスできます)。

于 2014-03-07T23:20:15.070 に答える