有没有办法找出哪个浏览器设置为Android设备上的默认浏览器?在Android设备上可能安装了多个浏览器,但其中只有一个设置为默认设置。我需要以编程方式找到它。
提前致谢。早期的回应表示赞赏..
答案 0 :(得分:17)
此代码可以帮助您:
Intent browserIntent = new Intent("android.intent.action.VIEW", Uri.parse("http://"));
ResolveInfo resolveInfo = getPackageManager().resolveActivity(browserIntent,PackageManager.MATCH_DEFAULT_ONLY);
// This is the default browser's packageName
String packageName = resolveInfo.activityInfo.packageName;
如果想要启动它,请执行以下操作:
startActivity(getPackageManager().getLaunchIntentForPackage(packageName));
答案 1 :(得分:2)
欢迎您使用PackageManager
和resolveActivity()
来尝试确定处理特定Intent
的活动(在哪个应用中)。但是,这可能表示选择器将处理请求,因为没有当前默认值(例如,用户刚刚安装了新浏览器,因此选择器将出现在下一个Web浏览器请求中)。