2017-02-12 5 views
0

У меня есть SFSafariViewController, который открывается, когда пользователь нажимает на ссылку в моем приложении. Мне нужно определить, когда изменяется URL-адрес, так что при его изменении приложение отображает предупреждение. Как мы обнаруживаем изменения URL в SFSafariViewController?Обнаружение изменения URL-адреса в SFSafariViewController

ответ

4

Вы не можете этого сделать.

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

official docs Упоминание (курсив мой):

Если ваше приложение позволяет пользователям просматривать веб-сайты из любого места в Интернете, использовать класс SFSafariViewController. Если ваше приложение настраивается, взаимодействует с или управляет отображением веб-контента, используйте класс WKWebView.

Для обеспечения приятного просмотра с использованием WKWebView потребуется больше работы (особенно некоторый пользовательский интерфейс), но вы находитесь под контролем. То же самое касается старшего брата, UIWebView. Если вы не знаете, что использовать, this comparison может помочь, хотя некоторые вещи могут быть улучшены на стороне WKWebView, так как статья была написана.

+0

Обратите внимание на большую разницу между 'SFSafariViewController' и другими:' SFSafariViewController' делится данными с обычным веб-браузером на устройстве (и другими 'SFSafariViewController' s, включая файлы cookie и пароли. Единственная причина для его использования (и причина, по которой она была создана в первую очередь) для входа/единого входа и т. д. Если вам это не нужно, используйте 'UIWebView' или' WKWebView'. Если вам это нужно, стандартный способ выйти из ' SFSafariViewController' автоматически (после успешного входа в систему), это использовать настраиваемую схему URL. – jcaron

 Смежные вопросы

  • Нет связанных вопросов^_^