Манифест офлайнового кэша игнорируется на iPhone

У меня есть демонстрационное приложение, которое должно быть примером создания автономного приложения, которое работает на мобильных устройствах. Я создал файл манифеста и отправляю его с правильным типом MIME, но основное изображение в приложении всегда загружается онлайн, и если я перехожу в режим полета, изображение не загружается, несмотря на то, что оно находится в кеше.

Почему изображение отсутствует в автономном кэше?

Обновить

Теперь у меня есть действительный манифест кэша приложения, но на iPhone я случайно не получаю основное изображение - даже когда он-лайн. У меня есть кнопка ручного обновления, которая обычно получает изображение со второй или третьей попытки, но когда я открываю приложение с домашнего экрана, на нем появляется знак "?" заполнитель вместо.

Обновить

Я сильно упростил пример и включил много предложений, но проблема все еще остается. Вот шаги, которые я пробовал до сих пор.

  1. JavaScript полностью удален - на странице просто отображается статичное изображение

  2. Заменены все изображения с файлами менее 25 КБ

  3. Добавил NETWORK: * в манифест

  4. Перевезу NETWORK: * быть выше CACHE: заголовок.

  5. Попытка переименования "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
Другие вопросы по тегам