0

Как уменьшить размер базы данных SQLite?

11

Проблема: Уменьшение размера базы данных SQLite

Я сохранил все свои данные в базе данных SQLite, и сейчас ее размер составляет 14 МБ. Меня беспокоит, что пользователи с медленным подключением к интернету могут столкнуться с трудностями при загрузке моего приложения из-за такого размера базы данных.

Существует ли способ уменьшить размер базы данных SQLite, чтобы сделать ее более доступной для пользователей с низкой пропускной способностью?

4 ответ(ов)

0

14 МБ — это довольно большой размер для Android-приложения, поэтому будет лучше, если вы организуете его загрузку с сервера и интеграцию в приложение.

Вместо этого можно упаковать приложение вместе с файлом базы данных в сжатом формате (например, .zip) и разархивировать его при первом запуске приложения (не забудьте удалить .zip файл). Лучше всего осуществлять все это на SD-карте.

0

Попробуйте заархивировать вашу базу данных и использовать ZipInputStream для распаковки из ресурсов. В любом случае, Android сам заархивирует вашу базу данных в 14 МБ, когда будет создан APK (которая будет распакована во время установки). Так что, полагаю, размер вашего APK будет около 5-6 МБ.

0

У меня был опыт работы с SQLite, когда я импортировал около 3 МБ данных и потом обнаружил, что у данных есть проблемы с кодировкой. Я удалил таблицу, создал её заново и снова импортировал данные после исправления кодировки. В результате файл SQLite увеличился до 6 МБ. Моим решением стало удалить базу данных SQLite и создать новую. (Без дополнительных деталей о том, что вы храните в своей базе данных, это всё, что я могу предложить...)

0

14 МБ — это не так уж и много для приложения в наше время. Ещё один вариант, который вы можете попробовать, — это удалить ненужные индексы таблиц. Возможно, в ваших таблицах есть лишние индексы, которые занимают много места. Вам, возможно, придется изменить свои запросы.

Чтобы ответить на вопрос, пожалуйста, войдите или зарегистрируйтесь