WKWebView 设置 user-agent
参考文档
(图片来源网络,侵删)
之前设置 user-agent 都是通过设置NSUserDefaults来实现的,不过升级到了iOS17之后这个方式不好用了。
老的设置方式:
(图片来源网络,侵删)
[[NSUserDefaults standardUserDefaults] registerDefaults:dictionnary];
目前看通过设置 webview 里边的 customUserAgent 来实现可以的。不过设置之前最好把原始的给拿出来,把自己想要设置的给加进去。
let configuration:WKWebViewConfiguration = .init() configuration.allowsInlineMediaPlayback = true let webView = WKWebView(frame: self.bounds, configuration: configuration) let oldUserAgent = webView.value(forKey: "userAgent") as? String ?? "" webView.customUserAgent = "\(oldUserAgent) xxx"
之后自测一下:
webView.loadHTMLString(""" setTimeout(()=>{ let ele = document.getElementById('ua') ele.innerHtml = navigator.userAgent alert(navigator.userAgent) }) """, baseURL: nil)
文章版权声明:除非注明,否则均为VPS857原创文章,转载或复制请以超链接形式并注明出处。
还没有评论,来说两句吧...