默认应用选择器"始终"选项

时间:2015-07-23 21:15:38

标签: android default

在我的某个应用中,我想让用户选择一个网络浏览器,并希望选择"一次"和"永远"他们可以使用。

现在我正在使用:

 Intent webIntent = new Intent(Intent.ACTION_VIEW);
 webIntent.setData(Uri.parse("http://www.google.com"));
 webIntent.setComponent(new ComponentName("android","com.android.internal.app.ResolverActivity"));
 startActivity(webIntent);

得到以下结果:

enter image description here

虽然这允许选择应用并拥有我需要的选项,但要将Chrome设置为默认设置,用户首先必须点击Chrome,然后再次启用此对话框以将Chrome设置为默认值(它将显示在Firefox的地方。)

但我想要达到的目标是:

enter image description here

我尝试了不同的方法,我可以找到没有运气的SO。 任何建议都表示赞赏。

1 个答案:

答案 0 :(得分:0)

正如Mimmo所说,你无法改变系统选择器的行为,而且Android 5.0+选择器只允许用户通过" Always"将最后访问过的应用程序设为默认值。此外,出于明显的安全原因,您无法自行设置默认应用程序。

我还强烈建议您摆脱setComponent()电话,因为这不太适用于所有Android设备。设备制造商可以而且确实改变选择器之类的东西,这可能涉及不同包中的不同类。