【问题标题】:Give the option to always choose a browser to open a link提供始终选择浏览器打开链接的选项
【发布时间】:2019-04-05 02:02:24
【问题描述】:

有没有办法让用户始终选择应该打开特定链接的应用程序(浏览器)?类似于用户尚未选择默认程序时会发生的情况。

我的代码

            Intent intent = new Intent(Intent.ACTION_VIEW);
            forumintent.setData(Uri.parse(url));
            startActivity(intent);

【问题讨论】:

    标签: android android-intent


    【解决方案1】:

    以下方法适用于所有隐式意图 - 不限于您关于浏览器的问题。

    一般。当您发出隐式意图(如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);
    }
    

    【讨论】:

    • @Kasra 提出的解决方案是正确的。您必须清除设备上的默认浏览器设置才能始终显示浏览器应用程序选择器。这就是对我有用的方式。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    • 2012-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多