Подтвердить что ты не робот

Как я могу запретить автономным веб-приложениям iOS блокировать устройство?

My prototyping service создает автономные, незаменимые веб-приложения iOS. Иногда они блокируют устройство во время использования.

Кнопка дома перестает работать, приложение продолжает работать. В консоли устройства повторно отображается следующее (извлекается путем присоединения к xcode).

Apr 25 14:34:57 SpringBoard[67] <Warning>: Unable to determine intended instance of com.apple.webapp. Resulting app will be undefined.

4b9b3361

Ответ 1

Поскольку причина этого еще неизвестна, я подумал, что могу внести свой вклад, сообщив вам, что я получаю ту же самую проблему с приложением HTML5 на IOS 6 с iPhone 4s. В моем случае приложение не блокируется (все еще работает), но кнопка дома перестает работать (точно так же, как вы и Йенс). Время является случайным и, похоже, не привязано ко всему, что я могу сделать, чтобы его последовательно повторять. Также, когда это происходит, window.orientation всегда неправильно сообщает портретный режим, даже если устройство физически находится в ландшафте (на iPhone).

ОБНОВЛЕНИЕ 12/15/2013
1) Обнаружение этой ошибки: я смог ловушку, когда ошибка возникает на iPhone. Мое приложение работает в ландшафтном режиме, и обычно они могут переходить в альбом в любое время. Но чтобы поймать эту ошибку, она теперь обнаруживает, работает ли приложение на iPhone и выбрасывает страницу roadblock, которая требует от пользователя поворота своего устройства в альбомную для начала. За это время приложение увидит, правильно ли отображается гироскоп в режиме ландшафта, но windows.orientation(неправильно) говорит об этом в портрете. Это происходит только при срабатывании ошибки. Итак, я могу показать хорошее сообщение о том, как восстановить. Примечание: этот метод работает только на iPhone... Я еще не понял решение для его обнаружения на iPad.

2) Избегайте этой ошибки: я нашел один способ избежать возникновения проблемы (с небольшой дополнительной работой). Я заметил, что после очистки моего обработчика событий проблема возникает только при последующих загрузках приложения... не в первый раз, когда я его загружаю. И я также заметил, что после закрытия приложения он все еще работает в "списке задач iOS" (не уверен, какой правильный термин для iOS для этого).

Итак, дважды нажмите кнопку "домой", чтобы открыть список задач и проведите его (чтобы по-настоящему закрыть его). У меня никогда не возникало проблем после этого. Дополнительное примечание: просто выполнить перезагрузку устройства недостаточно (и, похоже, по-прежнему приводит к зависанию). И после перезагрузки я заметил, что он будет в списке задач дважды (что кажется неправильным и, возможно, ключом к тому, что происходит неправильно внутри). В любом случае, если вы перезагрузились, перед запуском приложения обязательно перейдите в список задач и сначала удалите все экземпляры приложения.

Ответ 2

Команда SoundJS отследила эту проблему до веб-приложения, входящего в полноэкранный режим, используя:

<meta name="apple-mobile-web-app-capable" content="yes" />

Сообщается об ошибке в apple (ссылка # 15133492).

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