Я работаю над своим первым приложением iOS, которое будет развернуто как для iPhone, так и для iPads. Приложение содержит данные, которые необходимо добавить в приложение, которые будут использоваться, когда устройство будет отключено.Лучший способ сохранить данные локально на устройстве в приложении iOS
Автономная версия имеет по крайней мере 35-40 записей с каждой записью, содержащей изображения (которые будут сгруппированных в приложении, только имена будут сохранены), и varchar
поле, которое было бы зарегистрировано не менее 1000 слов и boolean
поле.
я нашел три возможных решения для одной и той же
Сохранить все поля с использованием базы данных (
SQlite
илиCoredata
), однако я обеспокоен за столом, который будет иметь 1000 слов. Но так как поле VARCHAR может меняться, мне нужно выделить не более 2000 (или более, в зависимости от фактической длины ключевых слов) предела (что приведет ненужное выделение ресурсов памяти)Другой подход, который я хотел бы есть информация в форме json локально и использовать его как и когда требуется, и сохранять логические поля (только true локально в
NSUserDefaults
)- Используйте подход JSON, как обсуждалось выше, и создайте базу данных для управления булевыми полями.
Я хотел бы узнать мнение сообщества StackOverflow
о том, что было бы идеальным/оптимизированным подходом для этого сценария. Кроме того, я открыт для любого другого подхода.
Редактировать 1 Предлагаемая предварительная databased структура
Listing Table
id -> int (autoincrement)
name -> varchar(25)
imagename -> varchar(10)
desription -> varchar(2000)
favorite -> boolean
Когда вы говорите: «таблица, которая будет иметь 1000 слов», означает ли это, что вы хотите сохранить 1000 слов в одной записи? – Laffen
@ Laffen Пожалуйста, проверьте изменение – onkar
SQLite на самом деле не реализует определенный тип данных varchar, он реализован как «ТЕКСТ»: https://www.sqlite.org/datatype3.html#section_3 –