使应用默认打开 chrome

Make app open chrome by default

我有一个应用程序可以在 chrome 自定义选项卡中打开 link。但是当用户第一次运行它时(并且他安装了多个浏览器),它会给用户一个弹出窗口,要求他选择默认应用程序(即你想将 UCBrowser 设置为默认应用程序,还是 chrome 等)

有没有什么方法可以让我跳过此弹出窗口并始终在 chrome 中打开我的应用程序?

是的,您可以为此使用 PackageManager

String url = "http://www.example.com";

PackageManager pm = context.getPackageManager();
Intent launchIntent = pm.getLaunchIntentForPackage("com.android.chrome");
launchIntent.setData(Uri.parse(url));
if (launchIntent != null) {
    context.startActivity(launchIntent);
} else {
    Toast.makeText(context, "Chrome not found", Toast.LENGTH_SHORT).show();
}

或者您可以在 Intent

上使用 setPackage 方法
Intent launchIntent = new Intent();
launchIntent.setAction("android.intent.action.VIEW");
launchIntent.addCategory("android.intent.category.BROWSABLE");
launchIntent.setPackage("com.android.chrome");
launchIntent.setData(Uri.parse(url));
startActivity(launchIntent);

但在 setPackage 之前,您必须确保包存在(com.android.chrome 在您的情况下)