我正在为一个简单的webview工作来显示一个网站当然..这个网站有一个移动版本但是当我尝试运行该应用程序时,webview显示桌面模式。我尝试过各种方式,但似乎没有任何工作..我试图改变用户代理,但没有.. 这是我正在使用的用户代理的一部分
webView.getSettings().setUserAgentString("Mozilla/5.0 (Linux; U;`
Android 2.0; en-us; Droid Build/ESD20) AppleWebKit/530.17 (KHTML, like
Gecko) Version/4.0 Mobile Safari/530.17");
当然不行。
另一个(不起作用)
webview.getSettings().setUserAgentString("Mozilla/5.0 (Linux; Android 4.2.2; Nexus 7Build/JRO03D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Safari/535.19");
还有很多其他的但没有效果。我该怎么办?
使用我的代码编辑
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
getWindow().requestFeature(Window.FEATURE_INDETERMINATE_PROGRESS); // Request progress circle
setContentView(R.layout.main);
webview = (WebView) findViewById(R.id.webview);
WebSettings websettings = webview.getSettings();
websettings.setJavaScriptEnabled(true);
webview.getSettings().setUserAgentString("Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en)AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543a Safari/419.3");
setProgressBarIndeterminateVisibility(true); // Show progress circle
final Activity activity = this;
webview.setWebChromeClient(new WebChromeClient(){
public void onProgressChanged(WebView view, int progress) {
activity.setTitle("Loading...");
activity.setProgress(progress * 100);
if(progress == 100)
setProgressBarIndeterminateVisibility(false); // Hide progress circle when page loaded
activity.setTitle("Title");
}
});
if (savedInstanceState == null)
{
webview.loadUrl("http://forum.ubuntu-it.org/");
}
}
答案 0 :(得分:0)
使用以下代码段希望这可以与您合作
webview.getSettings().setUserAgentString("Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en)AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543a Safari/419.3");
答案 1 :(得分:0)
[...]当我尝试运行应用程序时,webview会显示桌面 模式.. [...]我试图更改用户代理但没有...
尝试删除“webview.getSettings()。setUserAgentString(..”..
Android默认以“移动模式”打开..
[...]当我尝试导航并点击某个链接时,它会询问我是否要打开 它带有浏览器。
要打开用户内部您的WebView点击的链接,只需使用setWebViewClient()为您的WebView提供WebViewClient。例如:
WebView myWebView = (WebView) findViewById(R.id.webview);
myWebView.setWebViewClient(new WebViewClient());