Android浏览器意图打开Dlophin而不是Firefox

Android浏览器意图打开Dlophin而不是Firefox,android,android-intent,dolphin-browser,Android,Android Intent,Dolphin Browser,我在谷歌上搜索了几个小时,但找不到如何将我的意图从Firefox改为dolphin浏览器。 我知道如何获取浏览器列表,但我正在寻找只打开Dolphin web浏览器的具体方法,稍后我将处理未安装的例外情况 String url = "http://www.google.com"; Intent intent = new Intent(Intent.ACTION_MAIN, null); intent.addCategory(Intent.CATEGORY_LAUNCHER

我在谷歌上搜索了几个小时,但找不到如何将我的意图从Firefox改为dolphin浏览器。 我知道如何获取浏览器列表,但我正在寻找只打开Dolphin web浏览器的具体方法,稍后我将处理未安装的例外情况

    String url = "http://www.google.com";
    Intent intent = new Intent(Intent.ACTION_MAIN, null);
    intent.addCategory(Intent.CATEGORY_LAUNCHER);
    intent.setComponent(new ComponentName("org.mozilla.firefox", "org.mozilla.firefox.App"));
    intent.setAction("org.mozilla.gecko.BOOKMARK");
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    intent.putExtra("args", "--url=" + url);
    intent.setData(Uri.parse(url));
    startActivity(intent);

你可以反编译你想要的apk(Dolphin),以了解他们在清单中放了什么,从而打开url并准确地定位该apk

。。但是如果你的用户没有安装特定的浏览器,那么限制你的用户将很容易被打破。 相反,如果您希望您的用户始终能够打开您的url,请让他们选择:


startActivity(Intent.createChooser(Intent),“我的意图选择器的标题”)

如果没有安装firefox怎么办?如果没有安装firefox,则与您希望用作目的的任何程序相同,您将捕获异常并重定向到play store下载:-1,因为它表明有人违反了软件许可条款和条件。从技术上讲,此答案是有效的。