Принудительно ли открывать URL в веб-клипе, если он установлен? - PullRequest
4 голосов
/ 19 ноября 2011

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

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

Таким образом, когда нативное приложение пытается вернуться в веб-приложение, URL-адрес, вероятно, будет открыт Safari, а не веб-клипом, и сессия будет потеряна. (И не только сеанс - все состояние страницы, которое в насыщенном веб-приложении на основе Javascript может быть много вещей с нетривиальным временем запуска.)

Это предположение верно? И если так, есть ли способ обойти это? Есть ли способ заставить iOS попытаться открыть URL с помощью веб-клипа, если он установлен?

1 Ответ

3 голосов
/ 12 января 2012

Для запуска чего-либо через пользовательскую схему URL в iOS необходимо, чтобы приложение зарегистрировало эту информацию через встроенный в приложение Info.plist.

Невозможно иметь веб-приложение /webclip зарегистрируйте этот информационный системный уровень.

Итак, чтобы ответить на ваш главный вопрос, вы не можете сделать это.

Вот информация о реализации пользовательских схем URL в собственных приложениях .

...