意图使用 setType() 只允许 jpeg 和 png 图像;不是 gif 图像

Vik*_*jaj 6 android jpeg image android-intent mime-types

我正在开发一个 Android 应用程序,用户必须从库中选择一个图像。此图像应具有 .jpeg/.png 扩展名。

我试过了:

Intent i = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
i.setType("image/jpeg, image/png");
Run Code Online (Sandbox Code Playgroud)

但是,它仍然允许我选择 .gif 图像。我究竟做错了什么?

San*_*dak 3

如果您想指定允许的图像格式,您的代码应如下所示:

String[] mimeTypes = {"image/jpeg", "image/png"};
final Intent pickIntent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI)
            .setType("image/*")
            .putExtra(Intent.EXTRA_MIME_TYPES, mimeTypes);
Run Code Online (Sandbox Code Playgroud)