【问题标题】:Find out Default Application for Mime types in android在 android 中找出 Mime 类型的默认应用程序
【发布时间】:2014-03-28 05:44:43
【问题描述】:

如何通过代码获取android中用户设置的默认应用? 我知道我们可以通过 packageManager 获取特定 MIME 类型的默认应用程序包名称。 但是有没有办法获取所有注册为默认打开各种文件的应用程序的列表?

【问题讨论】:

标签: android settings default mime-types


【解决方案1】:

使用PackageManager.getPreferredActivities()

    final PackageManager pm = getActivity().getPackageManager();

    final IntentFilter filter = new IntentFilter(Intent.ACTION_MAIN);
    filter.addCategory(Intent.CATEGORY_LAUNCHER);

    List<IntentFilter> outFilters = new ArrayList<IntentFilter>();
    outFilters.add(filter);

    List<ComponentName> outActivities = new ArrayList<ComponentName>();
    pm.getPreferredActivities(outFilters, outActivities, null);

【讨论】:

  • 谢谢!正是我想要的!
  • 我可以从intentfilter获取应用程序作为启动器的MIME类型吗?无需遍历列表 ouactivities 并从包名称中查找?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-14
相关资源
最近更新 更多