- (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler {
// 类似 UIWebView 的 -webView: shouldStartLoadWithRequest: navigationType:
NSString *url = [navigationAction.request.URL.absoluteString stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
// NSLog(@"拦截的url = %@",url);
if ([url containsString:@"alipay://"]) {//拦截url,截取参数,
NSString* dataStr= [[url substringFromIndex:23] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
// NSLog(@"dataStr=%@",dataStr);
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[ NSString stringWithFormat:@"alipay://alipayclient/?%@",[self URLEncodedString:dataStr]]]];// 对参数进行urlencode,拼接上scheme。
}
WKNavigationActionPolicy actionPolicy = WKNavigationActionPolicyAllow;
decisionHandler(actionPolicy);
}
近期评论