我尝试使用自定义用户代理加载webview
中的桌面网站,但该网站始终检测到我来自移动设备,因此他们将我重定向到移动网站。
我使用以下代码:
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setUseWideViewPort(true);
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setDomStorageEnabled(true);
webView.getSettings().setSupportZoom(false);
webView.getSettings().setBuiltInZoomControls(false);
webView.getSettings().setDisplayZoomControls(false);
webView.getSettings().setUserAgentString("Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36");
webView.setWebChromeClient(new WebChromeClient());
webView.setWebViewClient(new WebViewClient()
{
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
Log.d("WebView", "onPageStarted.." + url);
}
@Override
public void onPageFinished(WebView view, String url) {
Log.d("WebView", "onPageStarted.." + url);
super.onPageFinished(view, url);
}
@Override
public void onLoadResource(WebView view, String url) {
// TODO Auto-generated method stub
Log.d("WebView", "onLoadResource.." + url);
super.onLoadResource(view, url);
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
System.out.println("shouldOverrideUrlLoading :-" + url);
return super.shouldOverrideUrlLoading(view, url);
}
});
webView.loadUrl("https://xxxxxxxx.com");
答案 0 :(得分:-1)
SVGTextContentElement
尝试这可能这可以解决您的问题。
答案 1 :(得分:-1)
是的,为此,您必须添加UserAgentString并将其设置为WebView设置。
为此,我创建了一个方法,我们可以从中启用和禁用WebView的桌面视图。
如果要在WebView中设置桌面视图,请通过传递WebView和布尔值true来调用此方法。
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();
}