在webview中加载页面之前更改用户代理

时间:2013-11-11 16:11:14

标签: android webview

我有一个想要根据webview要加载的网页更改用户代理的内容。

即在实际加载页面之前检查URL然后更改用户代理。 所以我有以下代码

if (!(page.contains("google"))){
    grabit.setVisibility(View.VISIBLE);
    webView.getSettings().setUserAgentString(null);

}else{
    grabit.setVisibility(View.GONE);
    String newUA= "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.4) Gecko/20100101 Firefox/4.0";
    webView.getSettings().setUserAgentString(newUA);

}

这应该在理论上有效,但我不知道该把它放在哪里。 我知道你可以设置一个webviewclient,它有一个onPageStarted和onPageFinished方法,但有没有说一个BeforePageStarted方法?或类似的东西

1 个答案:

答案 0 :(得分:1)

http://developer.android.com/reference/android/webkit/WebViewClient.html#shouldOverrideUrlLoading(android.webkit.WebView, java.lang.String)

只要WebView获取要加载的Url,就会调用WebViewClient中的shouldOverrideUrlLoading函数。