Update: Несмотря на то, что мой ответ получает downvoted, я думаю, что это самый простой способ борьбы с принудительным перезагрузок по IOS. Моя стратегия не остановить веб-приложение от повторной загрузки при открытии, но это дает вам простой способ сохранить сеанс в активном состоянии, чтобы вы могли обнаружить и восстановить сеанс со стороны сервера, чтобы поток приложений не был (по просьбе ОП).
NB; это работает проще всего, если к страницам вашего веб-приложения всегда обращаются по одному и тому же URL-адресу (например, http://webapp.yourdomain.com/index.php); если нет, вам нужно будет сохранить местоположение пользователя в данных сеанса на стороне сервера и перенаправить пользователя туда, когда он войдет в ваше веб-приложение по основному URL-адресу.
Как уже говорилось, это позволяет сохранить состояние невредимым даже между перезагрузкой устройства, поэтому, несмотря на то, что оно не позволяет технически остановить перезагрузку веб-приложения при запуске с главного экрана, мне кажется, что это самый простой способ восстановления состояния для пользователя без его замещения перезагрузки.
Решение гораздо проще, чем использование локального хранилища, - продлить срок службы cookie сеанса. Это работает через веб-приложения (при условии, что они указывают на одну и ту же страницу, конечно) и даже между веб-приложением и обычной веб-версией приложения.
Хитрость заключается в том, чтобы сделать это:
// Start or resume session
session_start();
// Extend cookie life time by an amount of your liking
$cookieLifetime = 365 * 24 * 60 * 60; // A year in seconds
setcookie(session_name(),session_id(),time()+$cookieLifetime);
Для более сложного обсуждения этой стратегии вы посмотрите на мой ответ на этот вопрос может:
Maintain PHP Session in web app on iPhone
Смотрите мой ответ здесь : http://stackoverflow.com/a/40707231/473637 – Jeshurun 2016-11-20 17:48:04