我想在外部浏览器中打开一些链接。在打开之前,我想在设备中显示浏览器列表。我使用Intent.ACTION_VIEW完成了这项功能。但是根据我的应用程序的要求,我想显示浏览器列表,即使设备中只有一个浏览器应用程序。任何人都对此有任何想法。谢谢。
答案 0 :(得分:8)
如果您有一个浏览器应用程序,则选择器将不会启动,该URL将加载到该浏览器应用程序上。如果您有两个或更多浏览器应用程序,Android系统会启动IntentChooser
显示设备上安装的所有浏览器应用程序的列表,因此用户可以选择他喜欢的浏览器来加载URL:
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("http://www.stackoverflow.com"));
startActivity(intent);
编辑: 创建自定义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 = getResources().getText(R.string.chooser_title);
// Create and start the chooser
Intent chooser = Intent.createChooser(intent, title);
startActivity(chooser);
参考this
答案 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);
}
答案 2 :(得分:0)
设置>应用>清除默认值(
如果您之前已将“用作默认应用”设置为chrome
这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