Google disallowed_useragent в WKWebView - PullRequest
0 голосов
/ 04 ноября 2018

Я пытаюсь использовать WebView для страницы в своем приложении, но при попытке войти в Google я получаю сообщение об ошибке. enter image description here Я знаю, что Google требует, чтобы браузер операционной системы входил в их службы, но есть способы обойти OAuth. Где в моем коде это должно быть реализовано, чтобы Google поверил, что WebView - это браузер.

    class CycleViewController: UIViewController, WKUIDelegate {

    var window: UIWindow?
    var webView: WKWebView!

    override func loadView() {
        let webConfiguration = WKWebViewConfiguration()
        webView = WKWebView(frame: .zero, configuration: webConfiguration)
        webView.uiDelegate = self
        view = webView

    }

    override func viewDidLoad() {
        super.viewDidLoad()

        webView.backgroundColor = UIColor.clear
        webView.backgroundColor = UIColor(red: 0.0196, green: 0.4, blue: 0.2902, alpha: 1.0)

        webView.isOpaque = false
        let myURL = URL(string: "https://jwelsh19.wixsite.com/countryday")
        let myRequest = URLRequest(url: myURL!)
        webView.load(myRequest)

    }
}

1 Ответ

0 голосов
/ 04 ноября 2018

Просто установите правильное значение вашего мобильного агента сафари в webConfiguration.applicationNameForUserAgent. Попробуйте с помощью следующего кода.

override func loadView() {
        let webConfiguration = WKWebViewConfiguration()
        webConfiguration.applicationNameForUserAgent = "Version/8.0.2 Safari/600.2.5"
        webView = WKWebView(frame: .zero, configuration: webConfiguration)
        webView.uiDelegate = self
        view = webView
    }
...