1

アプリに IM メッセージング モジュールを実装しましたが、メッセージを履歴として保持することに関して問題があります。私のモデルでは、サービスを使用してすべてのメッセージをプッシュしており、新しいメッセージにはソケットが付属しています。

デバイスにメッセージ履歴を保存することは、サービスの帯域幅を節約するためのより良い方法だと思います. データの保管に使用することを考えていますNSUserDefaultsが、パフォーマンスの問題についてはよくわかりません。デバイスに巨大な行を保持するより良い方法はありますか?

4

1 に答える 1

1

小さなデータがある場合は、NSUserDefaults を使用してください。

ただし、データが大量の場合は、CoreData または Sqlite を使用してください。安心・安全です。

Apple は、CoreDate をパフォーマンスの面でより優れたものにしました。

Sqlite3 は、大規模なデータベースを保持し、データベース要素にアクセスする場合により便利です。sqlite3 データベースのアイテムを並べ替えることができ、Sqlite3 データベース内のアイテムを非常に高速に検索できます。

速度の違いは見られませんが、実行していることに適したメカニズムを選択することをお勧めします。設定だけの場合は NSUserDefaults を使用します。それ以外の場合は、オブジェクトを plist にシリアル化します。Cocoa を初めて使用する場合は、最初に Core Data や sqlite を避けて、最初に基本を学ぶ機会を自分に与えます。

于 2013-08-15T14:21:06.157 に答える