Веб-приложение HTML5 не кэшируется при добавлении на домашний экран в iOS

Для ясности, веб-приложение кэшируется и работает нормально в автономном режиме в Mobile Safari.

Проблема в том, когда он добавляется на домашний экран на iPhone 4s и iPad 2, оба работают под управлением iOS 6.0.1. Он не будет работать в автономном режиме и выдает сетевую ошибку при подключении к Интернету, т. Е. «Не удается открыть MYWEBAPP. MYWEBAPP не может быть открыт, поскольку он не подключен к Интернету»

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

Я тестировал приложение в настольных Safari, Chrome и инструментах разработчика Firefox, как в режиме онлайн, так и в автономном режиме. А также веб-инспектор с устройствами в Safari. Результат одинаковый на iPhone или iPad. Они оба кешируют веб-приложение и будут работать в Mobile Safari, но не при добавлении на домашний экран. Нет ошибок ни в автономном режиме, ни в сети.

Насколько я знаю, я использую лучшие практики:

Добавлен HTML-заголовок:<html manifest="photo.appcache">

Я также экспериментировал с использованием разных имен для файла манифеста, в том числе: cache.manifest и offline.manifest, поскольку я читал, что это имеет значение, но в моем тестировании не имеет значения, какое это имя, если речь идет о расширениях. манифест или .appcache и обслуживается соответствующим образом в файле .htaccess.

Добавлены правильные типы MIME:AddType text/cache-manifest appcache manifest

Я также попробовал:AddType text/cache.manifest manifest, AddType text/cache.manifest .manifest manifest, AddType text/cache-manifest .manifest

Я не верю, что это сработало:AddType text/cache.manifest но я не помню По большей части это не имело значения, и я придерживался:

Текстовый / кэшированный манифест AddType

как то, что было в HTML5 Mobile Boilerplate.

Добавлено:

СЕТЬ: *

в файл appcache. Я считаю, что это позволяет загружать все, а также заставляет работать все ссылки.

Я попытался удалить эту строку:<meta name="apple-mobile-web-app-capable" content="yes"> потому что я читал здесь о SO, это решает проблему, аналогичную моей, но я могу подтвердить, что она не работает в моем тестировании. При удалении этой строки или установке содержимого на «нет» при нажатии на значок главного экрана происходит перенаправление на Mobile Safari и не открывается полноэкранный режим.

Я в значительной степени сузил это до того, что это ошибка в iOS 6 (на самом деле я использую iOS 6.0.1), потому что я знаю, что теперь данные разделены для веб-приложений в браузере и добавлены на домашний экран. , Я публикую эту проблему здесь, чтобы узнать, сталкивались ли другие разработчики с такой же проблемой.

Ответы на вопрос(4)

Ваш ответ на вопрос