Манифест офлайнового кэша игнорируется на iPhone
У меня есть демонстрационное приложение, которое должно быть примером создания автономного приложения, которое работает на мобильных устройствах. Я создал файл манифеста и отправляю его с правильным типом MIME, но основное изображение в приложении всегда загружается онлайн, и если я перехожу в режим полета, изображение не загружается, несмотря на то, что оно находится в кеше.
Почему изображение отсутствует в автономном кэше?
Обновить
Теперь у меня есть действительный манифест кэша приложения, но на iPhone я случайно не получаю основное изображение - даже когда он-лайн. У меня есть кнопка ручного обновления, которая обычно получает изображение со второй или третьей попытки, но когда я открываю приложение с домашнего экрана, на нем появляется знак "?" заполнитель вместо.
Обновить
Я сильно упростил пример и включил много предложений, но проблема все еще остается. Вот шаги, которые я пробовал до сих пор.
JavaScript полностью удален - на странице просто отображается статичное изображение
Заменены все изображения с файлами менее 25 КБ
Добавил
NETWORK: *
в манифестПеревезу
NETWORK: *
быть вышеCACHE:
заголовок.Попытка переименования "manifest.appcache" в "cache.manifest"
Он работает в Firefox в автономном режиме с пустым дисковым кешем (то есть, чтобы гарантировать, что он может использовать только автономный кеш!), Но все еще показывает страшный синий вопросительный знак на IOS (протестировано на iPhone 4s).
2 ответа
После большого количества проб и ошибок я могу подтвердить, что решил проблему.
Ответ странный, но я дважды проверил, чтобы убедиться, что одно только это изменение вызывает появление / исчезновение проблемы.
Следующий метатег обычно рекомендуется, если ваше приложение будет добавлено на домашний экран IOS:
<meta name="apple-mobile-web-app-capable" content="yes">
Но на самом деле, не добавляйте это. Удаление этого тега из моего демо-приложения немедленно решило проблему на IOS 5.1.1 - поэтому вам нужно решить, ДОЛЖЕН ли вы использовать автономный кеш или полноэкранный стиль, а не работать в Safari.
Похоже, ваш кеш-файл недействителен из-за отсутствия файлов. Попробуйте сделать ваши пути относительно, например, Puzzle/page.png
,
Запуск валидатора дает следующие ошибки:
Line 3: Resource not found http://www.stevefenton.co.uk/Puzzle/CACHE Line 4: Resource not found http://www.stevefenton.co.uk/index.html Line 5: Resource not found http://www.stevefenton.co.uk/apple-touch-icon.png Line 6: Resource not found http://www.stevefenton.co.uk/page.png Line 7: Resource not found http://www.stevefenton.co.uk/knight.png Line 10: Resource not found http://www.stevefenton.co.uk/style.css