Android webview加载桌面视图

时间:2014-04-10 19:26:07

标签: android-webview user-agent

我希望android web视图显示桌面网站而不是移动网站。 即使将用户代理设置为桌面,我仍然会看到正在加载移动网站。

String newUA = "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.4) Gecko/20100101 Firefox/4.0";

WebSettings webSettings2 = webDisqus.getSettings();
        webSettings2.setJavaScriptEnabled(true);
        webSettings2.setBuiltInZoomControls(true);
        webDisqus.requestFocusFromTouch();
        webDisqus.setWebViewClient(new WebViewClient());
        webDisqus.setWebChromeClient(new WebChromeClient());
        webDisqus.getSettings().setUserAgentString(newUA);
        webDisqus.loadUrl("http://www.philly.com");

请帮助显示到桌面网站而不是移动网站

2 个答案:

答案 0 :(得分:1)

网站使用各种机制来决定提供页面的移动版本;用户代理只是其中之一。他们可能会设置一个Cookie或其他一些状态,在您访问过一次后,该状态将始终重定向到移动页面。他们可能会查看屏幕尺寸并按此方式进行操作。很难说这个特定的网站在做什么。也许尝试清除cookies?

您确定您设置的UA是该网站识别为桌面浏览器的桌面UA吗?

答案 1 :(得分:0)

您可以使用this WebView subclass中的setDesktopMode(true)或阅读implementedJsonSchema2POJO。做的是(a)将用户代理设置为以包含单词“mobile”或“Android”,以及(b)将视口设置为更大的宽度。