我正在WebView
加载数据类型为String的网址。使用类似的东西:
webview.loadUrl(string_variable);
但它会自动重定向到浏览器。
我在LOGCAT中得到了这个,
02-13 14:11:08.586: INFO/ActivityManager(5Cool: Displayed activity com.example.brown/.Bru_Press_MostRecent_ArticleView: 2583 ms (total 2583 ms)
02-13 14:11:09.376: INFO/ActivityManager(5Cool: Starting activity: Intent { act=android.intent.action.VIEW cat=[android.intent.category.BROWSABLE] dat=http://mobile.twitter.com/brownuniversity/statuses/8681812931 cmp=com.android.browser/.BrowserActivity (has extras) }
02-13 14:11:09.506: INFO/ActivityManager(5Cool: Start proc com.android.browser for activity com.android.browser/.BrowserActivity: pid=285 uid=10014 gids={3003, 1015}
答案 0 :(得分:27)
您可以通过覆盖WebView的WebViewClient来解决此问题。所需要的只是这样:
webView = (WebView) findViewById(R.id.webView);
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
return super.shouldOverrideUrlLoading(view, url);
}
});
请注意,WebView比完全成熟的浏览器更受限制
答案 1 :(得分:2)
使用不同的网址会发生同样的事情吗?我想知道mobile.twitter.com
是否有重定向导致浏览器启动。
答案 2 :(得分:2)
您需要为app添加设置 遵循:
mWebView.getSettings() .setUserAgentString( “Mozilla / 5.0(iPhone; U; CPU,如Mac OS X; en)AppleWebKit / 420 +(KHTML,如Gecko)版本/ 3.0 Mobile / 1A543a Safari / 419.3”);