我正在创建一个涉及WebView的应用程序。问题是我想加载整个页面而不是移动页面,所以我更改了用户代理。然而,有些页面加载了移动版本。
以下是我尝试过的两个版本的代码:
1.webview.getSettings().setUserAgentString("Mozila ");
2.
String DESKTOP_USERAGENT = webview.getSettings().getUserAgentString ();
DESKTOP_USERAGENT = DESKTOP_USERAGENT.replace("Mobile ","");
webview.getSettings().setUserAgentString(DESKTOP_USERAGENT);
这是在任何情况下加载移动版本的网页示例:
http://www.jurnalul.ro http://www.androidzoom.com
1.是否有人知道如何欺骗服务器并告诉他我使用的是桌面而不是手机? 2.网站如何知道我使用的是移动版?
非常感谢, 勒兹
答案 0 :(得分:2)
问题可能是,如果您使用的是运营商通过代理路由所有HTTP请求的设备,并且代理正在更改用户代理。使用您自己的服务器检查另一端,使用nc -l 80 -vvv您的请求确实正在发送您已修改的用户代理。
编辑:一些具体的故障排除步骤
您无法使用Wireshark或Fiddler测试这些内容,因为它发生在WAN中。您需要在接收端测试它,无论是在服务器上还是在您自己的台式机上。
答案 1 :(得分:1)
webview.getSettings().setUserAgent(1);//for desktop 1 or mobil 0.