我的应用中有一个WebView
我加载了一些网址。我希望当用户点击该网页上的链接时,默认浏览器将使用相应的链接打开。我已实施以下内容:
//set the addBanner
WebView wv = (WebView) findViewById(R.id.adBanner);
WebViewClient wvc = new WebViewClient(){
//open adds in new browser
@Override
public boolean shouldOverrideUrlLoading(WebView wv, String url) {
Intent i = new Intent(Intent.ACTION_VIEW).setData(Uri.parse(url));
wv.getContext().startActivity(i);
return true;
}
};
wv.getSettings().setJavaScriptEnabled(true);
wv.setWebViewClient(wvc);
wv.setWebChromeClient(new WebChromeClient()); //this was desperate attempt :)
wv.loadUrl(AdvertisementURL);
它在模拟器(Nexus 5,API 23;以及其他一些模拟器)中运行良好 - 当我点击链接时,会打开新的浏览器活动,其中包含预期的页面。但是在我的手机上(Android 4.2.2) - 链接在我的应用程序中打开,而不是在外部浏览器中打开。
为什么会这样?有没有办法解决它?非常感谢!