我打开了一个包含mailto链接的网页的webview(mailto:test@test.com)
我能够得到url=mailto:test@test.com
但不能获得与常规网址不同的部分.我想在撰写邮件时从mailto url中提取电子邮件以进行预填充.有没有一种优雅的方法从Swift iOS中的mailto url中提取test@test.com?
func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
let request: URLRequest = navigationAction.request
if let url = request.url,
url.scheme == "mailto" {
decisionHandler(.cancel)
let urlString = "scheme://myapp/open/compose?\(url.absoluteString.replacingOccurrences(of: ":", with: "="))
UIApplication.shared.open(URL(string: urlString)!)
return
}
}
Run Code Online (Sandbox Code Playgroud)