自动打开Android文件的Intent Chooser

时间:2014-04-18 06:52:17

标签: android file android-intent mime-types

我想在android中打开一个文件。我想要做的是,如果文件是Image类型,那么我想打开Intent Chooser,其中包含可以查看图像的应用程序,如果它是视频类型,那么打开Intent Chooser与应用程序可以观看视频。我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:13)

我找到了解决方案。我在这里粘贴它可以帮助其他用户。

    Intent intent = new Intent();
    intent.setAction(android.content.Intent.ACTION_VIEW);
    File file = new File(path);

    MimeTypeMap mime = MimeTypeMap.getSingleton();
    String ext = file.getName().substring(file.getName().indexOf(".") + 1);
    String type = mime.getMimeTypeFromExtension(ext);

    intent.setDataAndType(Uri.fromFile(file), type);

    context.startActivity(intent);

答案 1 :(得分:1)

您应该决定并知道该文件是视频还是图像。您可以通过查看文件的扩展名来完成。

之后你可以打开这样的视频:

Intent intent = new Intent();
intent.setAction(android.content.Intent.ACTION_VIEW);
    intent.setDataAndType(Uri.parse(result), "video/*");
startActivity(intent);

和这样的图像:

Intent intent = new Intent();
intent.setAction(android.content.Intent.ACTION_VIEW);
    intent.setDataAndType(Uri.parse(result), "image/*");
startActivity(intent);

Android系统会自动打开Intent Chooser