2013-08-15 3 views
1

Я использовал модуль обмена сообщениями IM в своем приложении, но есть проблема с тем, что сообщения хранятся как история. В моей модели я нажимаю все сообщения с помощью сервисов, а новые сообщения поступают с сокетами.Сохранение истории пакетных сообщений в устройстве iOS

Я думаю, что сохранение истории сообщений на устройстве - лучший способ сохранить пропускную способность при обслуживании. Я думаю использовать NSUserDefaults для хранения данных, но я действительно не знаю о проблемах с производительностью. Есть ли лучший способ хранить огромные строки в устройстве?

ответ

1

Если есть небольшие данные, используйте NSUserDefaults.

Но если данные в большом количестве используют CoreData или Sqlite. Это безопасно и безопасно.

Apple сделала CoreDate более эффективной с точки зрения производительности.

Sqlite3 более полезен для хранения большой базы данных и доступа к элементам базы данных. Вы можете отсортировать элементы базы данных sqlite3, вы можете быстро найти элемент в базе данных Sqlite3.

Вы не увидите разницу в скорости, но лучше всего выбрать правильный механизм для того, что вы делаете. Если это просто предпочтения, используйте NSUserDefaults, иначе я бы сериализовал ваши объекты на plist. Если вы новичок в Cocoa, я бы сначала избежал Core Data и даже sqlite, чтобы дать вам возможность сначала изучить основы.

+0

Я думаю, использование Sqllite3 - лучший способ получить данные с определенным идентификатором пользователя. У меня не будет возможности получить данные с использованием конкретного идентификатора пользователя, кроме использования Sqllite3? –

+0

И оцените мой вопрос тоже PLS :) –

Смежные вопросы