2013-02-04 51 views
13

我已經做了很多關於Stack Overflow和很多Google研究的研究,但是我發現其中沒有任何東西實際上是爲我工作的。我希望網站能夠查看桌面版網站而不是移動網站。我該怎麼做呢?我希望它直接進入桌面網站。設置WebView來查看桌面網站而不是移動網站

WebView myWebView = (WebView) findViewById(R.id.webview); 
    myWebView.loadUrl("http://www.apotter96.webs.com/"); 
} 
+0

不要以爲它真的是一種可能性,因爲它不在你手中當它注意到你是一個移動設備時,它會做。也許如果你發現他們如何識別並保存它,你可以用一些JavaScript或其他東西來操縱它 –

+0

我該如何使用JavaScript來做到這一點? – user2039764

+0

聽起來像你正在尋找一些方法來更改用戶的代理字符串?你有沒有搜索過,似乎有很多資源,當我谷歌。 – Grambot

回答

20

更改網頁流量的用戶代理

String newUA="Foo/"; // Change this to desired UA 

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

如何啓用Flash Player? – user2039764

+0

試試這個http://stackoverflow.com/questions/6596243/problem-to-load-flv-video-in-webview/6855609#6855609 – baboo

+1

這工作正常,但由於使用此設置,我得到了一個副作用。 webview不會在activity的onDestroy()中被銷燬。我正在使用mWebView.destroy();在活動的onDestroy功能 – user2041902

5

您可以使用WebView以適合移動顯示的方式將視圖顯示爲桌面版網站。

 webView = (WebView)findViewById(R.id.webView1); 
     webView.getSettings().setJavaScriptEnabled(true); 
     webView.getSettings().setLoadWithOverviewMode(true); 
     webView.getSettings().setUseWideViewPort(true); 

     webView.getSettings().setSupportZoom(true); 
     webView.getSettings().setBuiltInZoomControls(true); 
     webView.getSettings().setDisplayZoomControls(false); 

     webView.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY); 
     webView.setScrollbarFadingEnabled(false); 
+0

這個設置工作像魅力。 – benbas1982

2

此方法可幫助您設置DesktopMode上的WebView

public void setDesktopMode(WebView webView,boolean enabled) { 
    String newUserAgent = webView.getSettings().getUserAgentString(); 
    if (enabled) { 
     try { 
      String ua = webView.getSettings().getUserAgentString(); 
      String androidOSString = webView.getSettings().getUserAgentString().substring(ua.indexOf("("), ua.indexOf(")") + 1); 
      newUserAgent = webView.getSettings().getUserAgentString().replace(androidOSString, "(X11; Linux x86_64)"); 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 
    } else { 
     newUserAgent = null; 
    } 

    webView.getSettings().setUserAgentString(newUserAgent); 
    webView.getSettings().setUseWideViewPort(enabled); 
    webView.getSettings().setLoadWithOverviewMode(enabled); 
    webView.reload(); 
} 

這樣稱呼它是

移動模式:setDesktopMode(webView, false);

桌面模式:setDesktopMode(webView, true);