Допустим, у меня есть веб-приложение, которое вызывает собственное приложение по специальной схеме URL-адресов, и после того, как нативное приложение выполнит свою работу, оно возвращается в мое веб-приложение, открывая URL-адрес обратного вызова.
Все это прекрасно работает, когда мое веб-приложение работает в Safari. Но что произойдет, если пользователь сохранит веб-приложение на главном экране (создав «Веб-клип»)? В этом случае он запускается в отдельном процессе от обычного сафари и имеет отдельные файлы cookie и кэш.
Таким образом, когда нативное приложение пытается вернуться в веб-приложение, URL-адрес, вероятно, будет открыт Safari, а не веб-клипом, и сессия будет потеряна. (И не только сеанс - все состояние страницы, которое в насыщенном веб-приложении на основе Javascript может быть много вещей с нетривиальным временем запуска.)
Это предположение верно? И если так, есть ли способ обойти это? Есть ли способ заставить iOS попытаться открыть URL с помощью веб-клипа, если он установлен?