当WKWebView中加载链接时,我怎么知道外部应用程序是否打开?

问题描述 投票:0回答:1

我有一个WKWebView,该Webview将加载类似https://qr.payme.hsbc.com/2/XXXXYYYZZZ的链接。

并且在加载链接时有两种可能的结果,情况1是当用户安装Payme应用程序后将打开一个名为Payme的应用程序;情况2是当用户未安装Payme应用时,webview将被重定向到静态页面https://payme.hsbc.com/

我的问题是如何知道Payme应用程序是否已打开?

ios swift wkwebview ios-universal-links wknavigationdelegate
1个回答
0
投票

您可以使用deep linking或苹果推荐的universal linking检查设备中是否安装了应用程序。使用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视频link。另外,结帐universal-linking

© www.soinside.com 2019 - 2024. All rights reserved.