Ситуация: Есть Blackbery PlayBook, под который пишется приложение на HTML+JS (
WebWorks фреймворк). Приложению требуется около 20 тыс. файлов ресурсов (картинки png), средний размер каждого ~8 килобайт.
Проблема: В SDK есть
баг, из-за которого невозможно собрать приложение, состоящее из более чем 5000 файлов.
Задача: уменьшить количество используемых файлов.
Возможные решения:
1. Сгруппировать ресурсы в бóльшие файлы, читать по мере необходимости.
— Очень накладно по памяти: файл будет
целиком загружаться в память (все N МБ), а приложению одновременно будут нужны ресурсы из разных файлов.
2. Создать локальную БД (
HTML5 storage), загружать в неё ресурсы с сервера при первом старте.
— Хотелось бы избежать необходимости загрузки чего-либо из сети.
3. Архивировать ресурсы в большой файл, разархивировать в БД при первом запуске.
— Приложение будет занимать вдвое больше места, чем ему нужно.
Может, я что-то упускаю из вида?