Showing
1 changed file
with
29 additions
and
0 deletions
... | @@ -147,6 +147,35 @@ var timer2: DispatchSourceTimer? | ... | @@ -147,6 +147,35 @@ var timer2: DispatchSourceTimer? |
147 | }) | 147 | }) |
148 | } | 148 | } |
149 | 149 | ||
150 | + public func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) { | ||
151 | + | ||
152 | +// if(navigationAction.navigationType == .linkActivated) { | ||
153 | + | ||
154 | + if let redirectedUrl = navigationAction.request.url { | ||
155 | + // Example Deeplink: https://cosmote.page.link/loyaltyWallet | ||
156 | + // Example Deeplink: https://preview.page.link/cosmote.page.link/loyaltyWallet | ||
157 | + // Example Deeplink: https://apps.apple.com/app/id482889196?mt=8 | ||
158 | + | ||
159 | + if redirectedUrl.absoluteString.contains("cosmote.page.link") { | ||
160 | + | ||
161 | + // check if link can be opened. | ||
162 | + guard UIApplication.shared.canOpenURL(redirectedUrl) else { | ||
163 | + decisionHandler(.cancel) | ||
164 | + return | ||
165 | + } | ||
166 | + | ||
167 | + UIApplication.shared.open(redirectedUrl, options: [:], completionHandler: nil) | ||
168 | + | ||
169 | + decisionHandler(.cancel) | ||
170 | + return | ||
171 | + } | ||
172 | + } | ||
173 | + | ||
174 | +// } | ||
175 | + | ||
176 | + decisionHandler(.allow) | ||
177 | + } | ||
178 | + | ||
150 | // MARK: - WKScriptMessageHandler | 179 | // MARK: - WKScriptMessageHandler |
151 | public func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage) { | 180 | public func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage) { |
152 | 181 | ... | ... |
-
Please register or login to post a comment