1、WKWebView配置UserAgent

  1. [_webView evaluateJavaScript:@"navigator.userAgent" completionHandler:^(id _Nullable result, NSError * _Nullable error) {
  2. @strongify(self);
  3. if (error) {
  4. NSLog(@" UA: Error == %@",error.localizedDescription);
  5. } else {
  6. NSString *newUserAgent = [result stringByAppendingFormat:@" %@", @"platform/ios"];
  7. [[NSUserDefaults standardUserDefaults] registerDefaults:@{@"UserAgent":newUserAgent}];
  8. [[NSUserDefaults standardUserDefaults] synchronize];
  9. [self.webView setCustomUserAgent:newUserAgent];
  10. }
  11. }];

2、WKWebViewConfiguration

使用WKwebViewConfiguration可以呈现网页的时间,媒体播放的方式。
只有初始化wkwebview的时候配置configuration,不能在创建wkwebview之后,去修改configuration。

  • WKPreferences:偏好设置

    • minimumFontSize:网页最小字体大小
    • javaScriptCanOpenWindowsAutomatically:是否能通过javascript自动打开窗口,iOS默认是NO,mac os是YES
    • fraudulentWebsiteWarningEnabled:,默认YES,是否应发出警告,显示可疑的欺诈内容,例如网络钓鱼或恶意软件。iOS13之后可用
    • textInteractionEnabled:是否禁用文本交互,iOS15之后可用
    • javaScriptEnabled:是否启用javascript 过期
  • WKProcessPool


  • WKUserContentController:webview的内容对应的Controller

  • WKWebsiteDataStore:webview保存的数据