На iOS, как я могу программным образом определить, является ли URL-адрес универсальной ссылкой или просто обычным веб-URL?Как я могу программным образом определить, является ли URL-адрес универсальной ссылкой или просто обычным веб-адресом?
Предположим, вы собираетесь запустить URL-адрес http://www.yelp.com из своего собственного приложения для iOS. (http://www.yelp.com является полностью зарегистрированной универсальной связью.)
Case один) пользователь не установлено приложение -> Вы хотите, чтобы показать им сайт в качестве IN-APP WebView.
Case два), пользователь делает установлено приложение -> Вы хотите запуска из вашего приложения и глубокой связи непосредственно в приложение Yelp, используя [[UIApplication sharedApplication] OpenUrl: URL]; вместо представления webview в приложении.
Вот проблема: Все, что вы получите работу с это строка URL: «http://www.yelp.com» Ваша цель состоит в том, чтобы пуститься в приложение Yelp, если он установлен, но представить WebView в приложении, если визг является не установлен.
Примечание 1: Этот вопрос касается только универсальных ссылок. Пожалуйста, не давайте ответов, которые используют схемы URL.
Примечание 2: Этот вопрос касается не только запуска приложения визжа. Решение должно работать для любого URL-адреса, чтобы определить, является ли это универсальной ссылкой установленного приложения.
Вы можете это сделать?
Используйте canOpenURL, чтобы проверить, если схема URL может быть обработана системой, если она не может (Yelp приложение не установлен), затем отобразите экран веб-просмотра. – azimov
В каком случае canOpenURL вернет false для данного URL-адреса 'http: // www.yelp.com'? (В этом вопросе нет схемы, кстати, –