Сейчас у меня есть приложение, которое загружает веб-просмотр, и все клики хранятся в приложении. То, что я хотел бы сделать, - это когда в приложении открыта определенная ссылка, например http://www.google.com, которая открывает браузер по умолчанию. Если у кого-нибудь есть идеи, пожалуйста, дайте мне знать!
Ссылка WebView нажмите открыть браузер по умолчанию
Ответ 1
Мне пришлось сделать то же самое сегодня, и я нашел очень полезный ответ на StackOverflow, который хочу поделиться здесь, если кому-то это понадобится.
webView.setWebViewClient(new WebViewClient(){
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url != null && url.startsWith("http://")) {
view.getContext().startActivity(
new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
return true;
} else {
return false;
}
}
});
Ответ 2
WebView webview = (WebView) findViewById(R.id.webview);
webview.loadUrl(http://www.playbuzz.org);
вам не нужно включать этот код //webview.setWebViewClient(новый WebViewClient()); вместо этого вам нужно использовать d-код ниже
webview.setWebViewClient(new WebViewClient(){
public boolean shouldOverrideUrlLoading(WebView view, String url) {
String url2="http://www.playbuzz.org/";
// all links with in ur site will be open inside the webview
//links that start ur domain example(http://www.example.com/)
if (url != null && url.startsWith(url2)){
return false;
}
// all links that points outside the site will be open in a normal android browser
else {
view.getContext().startActivity(
new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
return true;
}
}
});
Ответ 3
вы можете использовать Intent для этого:
Intent browserIntent = new Intent("android.intent.action.VIEW", Uri.parse("your Url"));
startActivity(browserIntent);
Ответ 4
Вам нужно только добавить следующую строку
yourWebViewName.setWebViewClient(new WebViewClient());
Отметьте этот для официальной документации.
Ответ 5
Вы можете использовать Intent для этого:
Uri uriUrl = Uri.parse("http://www.google.com/");
Intent launchBrowser = new Intent(Intent.ACTION_VIEW, uriUrl);
startActivity(launchBrowser);