У Apple есть действительно хорошая документация по этому вопросу, это немного сложно начать, но делает весь процесс манифеста более прозрачным. Кроме того, я считаю, что Safari (особенно Mobile Safari) показывает эти ответы на события более последовательно, чем Firefox; не уверен насчет Chrome, хотя он должен быть очень близок к Safari.
Корень вашего вопроса, хотя:
- Очистить манифест или добавить / удалить файл в манифест
- загрузить приложение
- повторно добавить манифест
- Перезагрузите приложение. Это грязный способ, но я рекомендую потратить время на чтение и реализацию JS, чтобы вы могли убедиться, что манифест обновляется.
У Google есть хороший пост здесь .
По сути, вы можете создать серию if else
тестов с помощью window.applicationCache.status
для четкого представления о том, что делает система.
от Apple:
Например, вы получаете объект DOMApplicationCache следующим образом:
cache = window.applicationCache;
Вы можете проверить состояние кэша приложения следующим образом:
if (window.applicationCache.status == window.applicationCache.UPDATEREADY)...
Если кэш приложения находится в состоянии UPDATEREADY, вы можете обновить его, отправив сообщение update () следующим образом:
window.applicationCache.update();
Если обновление прошло успешно, поменяйте местами старый и новый кэши следующим образом:
window.applicationCache.swapCache();