Есть ли способ заставить мобильное Safari WebApp «забыть» о своем состоянии? - PullRequest
1 голос
/ 06 апреля 2010

У меня есть приложение для оценки зарождающегося моста , которое должно храниться локально на iPod touch / iPhone (iPad? Возможно, было бы неправильно)

Пока все хорошо, пользовательский набор иконок и базовая навигация JS выложены, но моя проблема в том, что он сохраняет свое состояние при выходе из приложения. Есть ли для этого простой магический метатег Apple? Или это достигается с помощью JavaScript?

Спасибо за понимание.

1 Ответ

1 голос
/ 06 апреля 2010

Когда вы говорите

означает для локального хранения

Вы имеете в виду, что в настоящее время вы просто тестируете с помощью мобильного сафари? Если это так, то, естественно, состояние будет помнить. Закрытие сафари на iphone сравнимо с минимизацией вашего браузера на рабочем столе. При условии, что памяти недостаточно, процесс выполняется в фоновом режиме.

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

Если вы хотите оставить его как веб-приложение, то удержание его в состоянии, если его обновление не будет ожидаемым поведением.

Добавление приложения на домашний экран также, насколько я помню, сбрасывает память.

Единственный способ, которым я знаю, чтобы освежить насыщенность в нативном сафари, - это через window.location.reload(). Проблема в том, что нет способа узнать, когда это назвать. Вы можете прослушивать фокус окна, но он срабатывает, если вы, например, переключаетесь между вкладками, что может быть очень неприятно.

...