有没有一种方法可以让用户始终选择应该打开特定链接的应用程序(浏览器)?类似于用户尚未选择默认程序时发生的情况。
我的代码
Intent intent = new Intent(Intent.ACTION_VIEW);
forumintent.setData(Uri.parse(url));
startActivity(intent);
以下方法适用于所有隐含意图,而不限于您对浏览器的问题。
一般来说。当您发出隐含意图(如ACTION_VIEW
)时,主机Android设备将检查是否有默认应用程序来处理该意图。如果有一个默认的应用程序,那么,在默认情况下,android将自动重定向到该应用程序。
但是,您可以强制应用程序选择器进行隐含意图。为此,您需要使用Intent.createChooser()
方法。参见此示例:
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(url)); // only used based on your example.
String title = "Select a browser";
// Create intent to show the chooser dialog
Intent chooser = Intent.createChooser(intent, title);
// Verify the original intent will resolve to at least one activity
if (intent.resolveActivity(getPackageManager()) != null) {
startActivity(chooser);
}