2012-03-20 9 views
1

実際には、私は約9MBのデータをドキュメントディレクトリに保存しているので、アプリケーションはアプリケーションストアから拒否されました。sqliteファイルを作成するのに適した場所は何ですか?

より良い、適切なロケーションストアイメージキャッシュとsqliteデータベースファイルを作成するには?

+0

おそらくそれは他の理由で拒否される可能性があります – KingofBliss

+0

ええ、それはsqliteファイルのために拒否されませんでしたが、私は無効なデータストレージのために拒否されたため心配しています。 – Hitesh

答えて

-1

あなたのアプリケーションに画像がたくさんある場合は、いずれの画像ストアサイトでも画像をソートして画像のリンクを使用してください。それはあなたのために良い。

1

画像キャッシュキャッシュディレクトリに行かなければなりません。これらのイメージを簡単に再作成できるので、キャッシュをバックアップに含めないでください。

sqliteファイルにユーザーデータが格納されている場合は、ドキュメントディレクトリに配置する必要があります。それはデバイスのバックアップに含まれなければなりません。なぜなら、デバイスをバックアップから復元するときに、ユーザーはすべてのデータを失うからです。

sqliteファイルがWebからダウンロードされ、それがユーザーによって変更されない場合は、キャッシュディレクトリにも入れます。 iOS 5.0.1以降では、そのファイルをドキュメントディレクトリに置き、"Do not backup"-Attributeを設定することができます。ただし、iOS 5.0以前のデバイスでは、そのファイルをキャッシュディレクトリに置く必要があります。

NSString *cacheDirectory = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject]; 
NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject]; 
+1

このディレクトリのパスを実際に教えていただきありがとうございます。インターネット上のすべてのページは、正確にどこにいるか教えてもらうことなく、キャッシュディレクトリに置くだけです。あなたに感謝します、あなたはとても配慮しています! –

1

懸念事項は、iCloudをサポートするiOS 5.0ですが、「バックアップしないでください」という属性は認識されません。この場合、アプリ内のドキュメントディレクトリのすべてのデータがiCloudにバックアップされる可能性があります。 5.xの下のiOSのバージョンの場合:

the iCloud backup is not valid. 
the "do not back up" flag is not relevent. It would not produce any warnings during compilation. 

したがって、データはすべてのバージョンのため、appropiately内容(ファイル/フォルダ)に追加フラグを「バックアップしない」と、ドキュメントディレクトリに保存することができます。問題は、バージョン5.0のみです。

関連する問題