获取打开文件的默认应用程序的图标

时间:2011-11-23 20:12:46

标签: android icons mime-types

我有特定文件的mime类型。我想获取打开文件的默认应用程序的图标。所以对于音乐,如果那是我的默认音乐播放器,我会显示Winamp图标。我怎么能这样做?

1 个答案:

答案 0 :(得分:7)

使用给定的mime类型和文件URI构建一个intent,并在其上调用PackageManager.queryIntentActivities

这样的事情:

final Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(fileUri);
intent.setType("image/png");

final List<ResolveInfo> matches = getPackageManager().queryIntentActivities(intent, 0);
for (ResolveInfo match : matches) {
    final Drawable icon = match.loadIcon(getPackageManager());
    final CharSequence label = match.loadLabel(getPackageManager());
}