当前位置:首页 > 编程笔记 > 正文
已解决

WKWebView iOS17设置UserAgent

来自网友在路上 168868提问 提问时间:2023-10-25 16:54:31阅读次数: 68

最佳答案 问答题库688位专家为你答疑解惑

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("""<!DOCTYPE html><html><body><div id='ua'></div><script>setTimeout(()=>{let ele = document.getElementById('ua')ele.innerHtml = navigator.userAgentalert(navigator.userAgent)})</script></body></html>""", baseURL: nil)
查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"WKWebView iOS17设置UserAgent":http://eshow365.cn/6-24307-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!