web-dev-qa-db-ja.com

iPhoneアプリのローカルストレージ

アプリケーションを開発したい。機能はRSSフィードリーダーに似ています。 WebサービスからXMLを読み取り、それらをテーブルビューに表示します。しかし、ローカルストレージを扱うにはいくつか問題があります。大量のストレージを必要とするため、すべての履歴レコードを保存する必要はありません。しかし、新しいデータが読み込まれているときやネットワーク接続がないときでも、ユーザーが実際に何かを見ることができるように、何十もの最新のレコードを保存したいと思います。私は何をすべきか? Coredataまたは他の方法を使用する必要がありますか?

13
Gang Wu

IOSプロジェクト内にこのストレージを実装する方法はいくつかあります(3つはここで説明します)。

  1. Core Data-Core Dataは非常に強力であり、確実にユースケースを処理できます。データモデルの設定には、いくらかのオーバーヘッドがあります。ここでコアデータについて読むことができます: https://developer.Apple.com/library/content/documentation/Cocoa/Conceptual/CoreData/index.html

  2. SQLiteデータベース-コアデータの実装では、おそらくSQLiteを永続ストアとして使用します。ただし、SQLiteを直接使用することもできます。これにより、データを好きなように処理できますが、上記の方法でデータを起動して実行するには、多くのオーバーヘッドが必要になります。これは良い解決策になる可能性がありますが、あなたのプロジェクトには適していないと思います。 http://www.techotopia.com/index.php/An_Example_SQLite_based_iOS_4_iPhone_Application

  3. プロパティリスト-プロパティリストは、データの読み取りと書き込みの両方のためにプロジェクト内で非常に簡単に実装できます。プロパティリストの詳細については、こちらをご覧ください: https://developer.Apple.com/library/content/documentation/Cocoa/Conceptual/PropertyLists/Introduction/Introduction.html

お役に立てば幸いです。

40
dtuckernet