Я разработал мобильное приложение HTML5 с jQueryMobile и пытаюсь предоставить автономную функцию, позволяющую пользователям использовать приложение без подключения к Интернету.Я следовал этому руководству: http://www.html5rocks.com/en/tutorials/appcache/beginner/
- Был создан файл манифеста.
- Текст / кэш-манифест mime-типа был добавлен в файл .htaccess.
- Страницы содержат файл манифеста в теге HTML.
Я проверяю его, и, похоже, он работает.Когда я не подключен, веб-навигация между моими страницами все еще работает.Тем не менее я обнаружил две основные проблемы:
1) Автономная навигация работает, когда я подключаюсь к приложению, а затем отключаю его.При открытии приложения из браузера мобильного устройства с записью URL-адреса в адресной строке без подключения веб-приложение не загружается !!Хотя я посещал веб-приложение раньше.
2) Файлы веб-приложений никогда не обновляются.Например:
- Я что-то изменяю в отсканированном файле CSS.
- Я обновляю комментарий в файле манифеста, чтобы сообщить приложению обновить его файлы.
- Файл CSS никогда не обновляется.Текущая версия - предыдущая.
Я пытаюсь определить статус кэша из JavaScript для управления обновлением страницы:
function checkCacheVersion(){
var webappCache = window.applicationCache;
if(webappCache){
//0-> unchached
//1-> idle
//2-> checking
//3-> downloading
//4-> updateready
console.log('Cache state= ' + webappCache.status);
if(webappCache.status == window.applicationCache.UPDATEREADY){
console.log('[Cache] There is an update waiting for reload');
webappCache.swapCache();
location.reload();
}
}
}
Тем не менее, статус кэша всегда "простаивает"" статус.Что это значит?Я понимаю, что я получил бы статус "Uncached", если кэш не был настроен должным образом.Правильно?
С другой стороны, CSS-файл примера обновляется только в том случае, если я удаляю его из файла Manifest.Таким образом, браузер обнаруживает, что файл не перехвачен и получает его правильно (я имею в виду, Cache правильно настроен, верно?).
Не могли бы вы помочь мне выяснить, где проблема?Большое спасибо !!
Серги