6

我想在外部浏览器中打开一些链接。在打开之前,我想显示设备上的浏览器列表。我使用 Intent.ACTION_VIEW 完成了这个功能。但是根据我的应用程序的要求,即使设备上只有一个浏览器应用程序,我也想显示浏览器列表。有人对此有任何想法吗?谢谢。

4

3 回答 3

14

如果您有一个浏览器应用程序,则不会启动选择器,URL 将加载到该浏览器应用程序上。如果您有两个或多个浏览器应用程序,android 系统会启动IntentChooser并显示设备上安装的所有浏览器应用程序的列表,因此用户可以选择他喜欢的浏览器来加载 URL:

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

编辑: 创建您的自定义意图选择器:

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 = getString(R.string.chooser_title);
// Create and start the chooser
Intent chooser = Intent.createChooser(intent, title);
startActivity(chooser);

参考这个

于 2013-07-01T09:07:00.303 回答
3
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);
            }
于 2016-10-08T14:23:09.087 回答
0

设置>应用程序>清除默认(

这是如果您之前为 chrome 设置了“用作默认应用程序”

这两张图片是我的来源:

选择浏览器或选择默认值的消息: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

于 2016-09-07T14:45:20.610 回答