Ограничение размера Манифеста кэша и веб-приложения

Я нахожусь на этапах планирования написания приложения, все еще выбирая технологию, которую я хочу использовать для написания приложения. Первоначальная идея состояла в том, чтобы написать веб-приложение, но это было (было?) падение невозможности просмотра в автономном режиме. Затем я обнаружил манифест кэша, и это потенциально казалось ответом.

однако с этого первого момента кажется, что существуют ограничения по размеру Манифеста кэша. Я не могу найти полный список ограничений размера для каждого браузера, поэтому я не могу сказать, полностью ли это истощает (хотя я думаю, что это может быть). Браузеры, с которыми я хочу работать, - это Firefox, Chrome и мобильные браузеры Safari (то есть он должен работать на iPad).

Я понимаю, что в большинстве случаев существует общий предел кэша около 5 Мб (с ним варьируется от браузера к браузеру), но этого было бы недостаточно для моих нужд. Я ищу для хранения всех пользователей онлайн-данных в автономном режиме. Это включает в себя такие вещи, как загруженные файлы (PDFs, картинки), а также контент, необходимый для физической работы приложения. В любом примере, который я видел, Cache-manifest использовался только для кэширования автономных вещей, таких как html, css, javascript и ресурсы изображений веб-сайта. Подходит ли он для автономного хранения PDF-файлов, загруженных пользователем?

Если ответ на этот вопрос-громкое " нет " (чего я боюсь), есть ли другие решения? Или это "правильное" приложение в браузере, то есть с разумное пространство - совершенно неосуществимым на этот раз? Мы все еще ждем, когда браузеры догонят требования разработки?

Edit: просто чтобы добавить, я знаю, что в спецификации HTML5 нет ограничений на кэш-манифест, но все реализации, похоже, ограничивают его, и это повлияет на все, что я пытаюсь написать.

4 ответов


вы можете увидеть больше о емкости предела здесь:http://grinninggecko.com/developing-cross-platform-html5-offline-app-1/


в случае, если люди все еще задаются вопросом об этом...

в настоящее время у меня есть приложение, которое является 44 Мб ресурсов, успешно загруженных и протестированных в автономном режиме на Safari(6.1), Chrome(31), Firefox(26), iPad (ios7) и iPhone (ios6).

единственная проблема, которую я обнаружил, это когда вы добавляете приложение на главный экран. Я решил, что это потому, что приложение слишком большое и нуждается в расширении кэша, однако для этого нет обработки, и это просто заканчивается ошибкой. Обходной - >перезагрузите приложение. Close, open и resave cache = работает.


нет предела в соответствии с spec, но я считаю, что предел больше, чем 5 Мб. См. также существует ли ограничение размера для Манифеста HTML5?


размер Appcache ограничен 5 Мб в устройствах android. Если вы создаете гибридное приложение для устройств android, вам необходимо убедиться, что appcache не должен превышать 5 Мб. В противном случае загрузка appcache становится неудачной, как только она достигает предела размера.

та же проблема не будет возникать на других устройствах (iphone, windows, blackberry и т. д.).