2017-01-18 17 views
0

私は、データ、テキスト、画像をオフラインモードでも利用できるようにするプロジェクトに取り組んでいます。iOSアプリケーションのローカルストレージに画像を保存する必要がありますか?

イメージURLやその他のデータを含むWebサービスからデータを取得します。テキストデータをコアデータエンティティに格納しますが、イメージはローカルには保存せず、リアルタイムでフェッチします。

オフラインモードで画像を表示するには、画像をローカルストレージに保存する必要があります。しかし、私はそれが正しいアプローチだろうと思っています。ローカルに画像を保存すると、ユーザーの端末に大量のストレージが残る可能性があります。

この問題を解決する最善の方法は何ですか?

ローカルにイメージを保存する必要がありますか、実行時にイメージを取得する必要がありますか?

答えて

2

NSCacheを使用してください。 NSCacheでは、キャッシュされるイメージの数に制限を設定できます。詳細については、アップルのドキュメントを参照してください。https://developer.apple.com/reference/foundation/nscache?language=objc

+0

ありがとうございました。アプリの再起動後にNSCacheが削除されていませんか? –

1

イメージをローカルに保存する必要がありますか、実行時にのみ取り込むべきですか?

この質問はあなたが必要とするものや、あなたのアプリケーションに適したものを決定する必要があります。画像をキャッシュしたい場合は、このライブラリを使用することをお勧めします。SDWebImage

+0

私はこれを私が決めるべきだと私は同意する。しかし、私の質問はベストプラクティスと理想的なシナリオに関するものでした。私は個人的にデータをダウンロードし、私の電話ストレージを使用するアプリが好きではありません。しかし、一般的には、これをダウンロードしたり、300 Mbのイメージをダウンロードして、アプリケーションディレクトリに保存して再利用しても構いませんか? –

+0

これは大丈夫ですので、私のビジョンは変わりました。画像の300メガバイトが大きすぎますので、ダウンロードした画像のキャッシュを制限することはできません – Gabrail

関連する問題