WebView跳转支付宝

一个web电商项目,在支付宝支付界面希望可以跳转到手机的支付宝客户端。
首先遵循webView的代理:webView.delegate = self
实现代理方法:

    func webView(_ webView: UIWebView, shouldStartLoadWith request: URLRequest, navigationType: UIWebViewNavigationType) -> Bool {
        let reqUrl = request.url?.absoluteString
        if (reqUrl?.hasPrefix("alipays://"))! || (reqUrl?.hasPrefix("alipay://"))! ||
            (reqUrl?.hasPrefix("http://wappaygw"))!{
            // 跳转支付宝
            UIApplication.shared.openURL(request.url!)
            
            return false
        }
        return true
    }

支付宝文档中写到跳转的API为alipays://alipay://,然而并没有跳转。打印跳转支付宝页面时得倒了跳转的url开头为http://wappaygw,加上这个判断之后点击支付宝之后会跳转到Safari然后打开支付宝客户端。可能是网页端接入支付宝SDK版本比较老的缘故。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容