cordova android通过拦截请求更改用户代理

时间:2016-05-25 11:20:30

标签: android cordova

我尝试创建这样的webviewclient:

webView.setWebViewClient(new SystemWebViewClient(finalSysWebViewEngine) {

    @Override
    public boolean shouldOverrideUrlLoading (WebView view, String url ){
        if (url != null && url.indexOf("mobile") >= 0) {
            view.getSettings().setUserAgentString("mobile-ua");
        } else {
            view.getSettings().setUserAgentString("desktop-ua");
        }
        return super.shouldOverrideUrlLoading(view, url);
    }

    @Override
    public WebResourceResponse shouldInterceptRequest (WebView view, String url) {
        if (url != null && url.indexOf("mobile") >= 0) {
            view.getSettings().setUserAgentString("mobile-ua");
        } else {
            view.getSettings().setUserAgentString("desktop-ua");
        }
        return super.shouldInterceptRequest(view, url);
    }
}

如果在shouldInterceptRequest中更改用户代理,应用程序将崩溃。 shouldOverrideUrlLoading从未打过电话。 我使用ajax做请求。

0 个答案:

没有答案