У меня есть многостраничный веб-сайт, который предназначен для работы в качестве веб-приложения на iPhone.
Он имеет обычное:
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="default" />
<link rel="apple-touch-icon" href="/apple-touch-icon.png" />
<link rel="apple-touch-startup-image" href="/images/startup.png" />
Сайт не использует Sencha или Javascript для навигации между страницами, только стандартные якорные ссылки и перезагрузку страницы (я знаю, что стандартный подход к веб-приложениям заключается в использовании интерфейса, подобного Sencha).
Он отлично работает при запуске с домашнего экрана iPhone и работает так же, как при просмотре через Safari.
Однако проблема возникает, когда на телефонный звонок отвечают в середине сеанса.
После завершения вызова iPhone (в данном случае версия 4) возвращается обратно к веб-приложению, но вместо восстановления ранее просмотренной страницы перезагружает домашний экран (та же страница, которая загружается при запуске веб-приложения). )
При просмотре сайта в Safari и принятии вызова он этого не делает и сохраняет URL-адрес и текущие значения сеанса.
Это известная проблема в веб-приложениях? Есть ли обходной путь?
(у меня есть идея сохранить значения сеанса и URL-адреса в локальной базе данных SQLite, но я не уверен, что это лучший подход)