最近在更新项目时候遇到这个bug,以下是我的解决步骤
1、在AppDelegate里面设置一个默认的UserAgent
let agentDefault = "Mozilla/5.0 (iPhone; CPU iPhone OS 12_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/16A366 YSL"
UserDefaults.standard.register(defaults: ["UserAgent": agentDefault])
UserDefaults.standard.synchronize()
2、在wkwebview,更新下UserAgent
webView.evaluateJavaScript("navigator.userAgent") {[weak self] (info, error) in
guard let this = self else{
return
}
if let str = info as? String{
if str.hasSuffix("YSL") {
//重新刷新下webview
this.loadURL()
return
}
let userString = str + "YSL"
UserDefaults.standard.register(defaults: ["UserAgent": userString])
UserDefaults.standard.synchronize()
this.webView.customUserAgent = userString
CWLog(this.webView.customUserAgent)
}
//重新刷新下webview
this.loadURL()
}