2019-04-10 WKWebview , 下载链接问题

问题描述:文章详情页有一个下载链接,文章: https://www.ithome.com/0/418/285.htm,链接还是个精简过的,无法直接判读类型,现在需要判断他的下载文件类型,如果是apk格式文件,禁止下载,下载了也没用,还跑流量.

解决方法:
WKWebview代理方法中,加上判断,由于 精简过得链接会有个重定向的动作,可在这个方法中捕捉到.

- (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler;

之后就简单了,直接加个提示弹窗:

if([requestUrlStr hasSuffix:@".apk"])
    {
        UIAlertController * alert = [UIAlertController alertControllerWithTitle:@"提示" message:@"该下载链接即将下载一个apk文件,下载请求已终止" preferredStyle:UIAlertControllerStyleAlert];
        [alert addAction:[UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
            [self.navigationController popViewControllerAnimated:YES];
        }]];
        [self presentViewController:alert animated:YES completion:nil];
        decisionHandler(WKNavigationActionPolicyCancel);
        return;
    }

你可能感兴趣的:(2019-04-10 WKWebview , 下载链接问题)