Показать список браузеров при открытии ссылки в Android

1

Я хочу открыть некоторые ссылки во внешнем браузере. Перед открытием я хочу отобразить список браузеров на устройстве. Я использовал эту функцию с помощью Intent.ACTION_VIEW. Но согласно моему требованию к приложению, я хочу отобразить список браузеров, даже если в устройстве есть только одно приложение-браузер. У кого-нибудь есть представление об этом. Благодарю.

Теги:
browser
android-webview
android-intent

3 ответа

7
Лучший ответ

Если у вас есть одно приложение-браузер, выбор не будет запущен, URL-адрес будет загружен в этом приложении браузера. Если у вас есть два или более браузера, система Android запускает IntentChooser показывая список всех приложений браузера, установленных на устройстве, поэтому пользователь может выбрать предпочитаемый браузер для загрузки URL-адреса:

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("http://www.stackoverflow.com"));
startActivity(intent); 

EDIT: создать свой пользовательский выбор:

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("http://www.stackoverflow.com"));

// Always use string resources for UI text. This says something like "Share this photo with"
String title = getResources().getText(R.string.chooser_title);
// Create and start the chooser
Intent chooser = Intent.createChooser(intent, title);
startActivity(chooser);

см. это

  • 1
    Спасибо за ваш ответ. Но мое требование заключается в том, что я хочу отображать IntentChooser, даже если на устройстве Android есть только одно браузерное приложение. Пожалуйста посоветуй.
  • 1
    @MithunRaj вы можете создать свой собственный IntentChooser и IntentChooser все приложения браузера на вашем устройстве (в данном случае это будет одно приложение), а затем отобразить его, см. Мои правки
Показать ещё 1 комментарий
2
Intent sendIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.maidofknowledge.com"));
            Intent chooser = Intent.createChooser(sendIntent, "Choose Your Browser");
            if (sendIntent.resolveActivity(getPackageManager()) != null) {
                startActivity(chooser);
            }

Обратитесь к этой статье с помощью диалога выбора

0

настройки> приложения> очистить значение по умолчанию (

это если вы ранее установили "использовать как приложение по умолчанию" для хром

эти 2 изображения являются моим источником:

Сообщение для выбора браузера или выберите значение по умолчанию: http://cdn2.ubergizmo.com/wp-content/uploads/2015/02/how-to-default-app-03.jpg

Очистить браузер по умолчанию, снова показать намерение выбора: http://cdn2.ubergizmo.com/wp-content/uploads/2015/02/how-to-default-app-02.jpg

Ещё вопросы

Сообщество Overcoder
Наверх
Меню