aeline
2021-03-09 f78e3e1bfc24d39bd5946716274574c6a7726c32
user-agent修改
1个文件已修改
25 ■■■■ 已修改文件
BuWanVideo2.0/WEBViewController.m 25 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BuWanVideo2.0/WEBViewController.m
@@ -40,6 +40,19 @@
    [_webView setMultipleTouchEnabled:YES];
    [_webView setAutoresizesSubviews:YES];
    [_webView.scrollView setAlwaysBounceVertical:YES];
   // [_webView setCustomUserAgent:@"Mozilla/5.0 (iPhone; CPU iPhone OS 12_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.1.1 Mobile/15E148 Safari/604.1"];
     // 获取当前UserAgent, 并对其进行修改
  [_webView evaluateJavaScript:@"navigator.userAgent" completionHandler:^(id userAgent, NSError * _Nullable error) {
    if ([userAgent isKindOfClass:[NSString class]]) {
        NSString *systemUserAgent =@"";
        systemUserAgent = [NSString stringWithFormat:@"%@ %@", userAgent, @"Safari/604.1" ];
      // 关键代码, 必须实现这个方法, 否则第一次打开UA还是原始值, 待第二次打开webview才是正确的UA;
        [_webView setCustomUserAgent:systemUserAgent];
    }
  }];
    // 这行代码可以是侧滑返回webView的上一级,而不是跟控制器(*指针对侧滑有效)
    [_webView setAllowsBackForwardNavigationGestures:true];
    [self.view addSubview:_webView];
@@ -156,12 +169,12 @@
        }
    }else if ([keyPath isEqualToString:@"estimatedProgress"]) {
        if (object == _webView) {
            double progress = _webView.estimatedProgress;
            if(progress!=1){
                [SVProgressHUD showProgress:progress status:@"加载中"];
            }else{
                [SVProgressHUD dismiss];
            }
         //   double progress = _webView.estimatedProgress;
         //   if(progress!=1){
         //       [SVProgressHUD showProgress:progress status:@"加载中"];
         //   }else{
         //       [SVProgressHUD dismiss];
         //   }
        } else {
            [super observeValueForKeyPath:keyPath ofObject:object change:change context:context];
        }