Как я могу узнать, будет ли открываться внешнее приложение при загрузке ссылки в WKWebView? - PullRequest
0 голосов
/ 27 мая 2020

У меня есть WKWebView, веб-просмотр загрузит ссылку, например https://qr.payme.hsbc.com/2/XXXXYYYZZZ.

И есть два возможных результата, когда ссылка загружена,
случай 1 - приложение называемый Payme будет открыт, когда пользователь установил приложение Payme;
случай 2 - веб-просмотр будет перенаправлен на страницу stati c https://payme.hsbc.com/, если пользователь не установил приложение Payme.

У меня вопрос: как узнать, открыто ли приложение Payme?

1 Ответ

0 голосов
/ 27 мая 2020

Вы можете использовать deep linking или universal linking, рекомендованное Apple, чтобы проверить, установлено ли приложение на устройстве. С помощью deep linking вам нужно получить схему приложения, которое приложение уже добавило. И вы можете проверить, можно ли открыть схему так же, как и для любого другого типа URL. Вот пример:

let appSchemeString = "com.myAppScheme://"
let url = URL(string: appSchemeString)!
if UIApplication.shared.canOpenURL(url) {
    print("App is present")
} else {
    print("App is not")
}

Вам необходимо обновить файл info.plist, включив в него схемы, которые вы будете открывать в приложении. Вы должны добавить это:

<key>LSApplicationQueriesSchemes</key> 
<array>
<string>com.myAppScheme</string> 
</array>

Вот полное видео на YouTube ссылка об этом. Также касса универсальная ссылка .

...