Android 如何从多媒体资料中选择GIF文件?

Android 如何从多媒体资料中选择GIF文件?,android,android-studio,Android,Android Studio,我是android开发新手。我目前正在使用一个应用程序,在这个应用程序中,我必须从图库中选择GIF文件。我正在使用下面的代码 image_gif.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(); intent.setType("ima

我是android开发新手。我目前正在使用一个应用程序,在这个应用程序中,我必须从图库中选择GIF文件。我正在使用下面的代码

image_gif.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent();
            intent.setType("image/gif");
            intent.setAction(Intent.ACTION_GET_CONTENT);
            startActivityForResult(Intent.createChooser(intent, "Select Picture"), PICK_GIF_REQUEST);

但通过使用上述代码,我的图库显示了所有类型的文件(.jpeg、.png、.mp4等)。每当我选择其中一个文件时,我的应用程序都会崩溃并出现异常。提前感谢您的帮助。

用下面的代码列出SD卡中的所有gif,然后让用户从列表中选择特定的gif

private List<String> getListOfFiles(String path) {

    File files = new File(path);

    FileFilter filter = new FileFilter() {

        private final List<String> exts = Arrays.asList("gif");

        @Override
        public boolean accept(File pathname) {
            String ext;
            String path = pathname.getPath();
            ext = path.substring(path.lastIndexOf(".") + 1);
            return exts.contains(ext);
        }
    };

    final File [] filesFound = files.listFiles(filter);
    List<String> list = new ArrayList<String>();
    if (filesFound != null && filesFound.length > 0) {
        for (File file : filesFound) {
           list.add(file.getName());
        }
    }

    return list;
}
私有列表getListOfFiles(字符串路径){
文件=新文件(路径);
FileFilter=newfilefilter(){
私有最终列表exts=Arrays.asList(“gif”);
@凌驾
公共布尔接受(文件路径名){
字符串扩展;
String path=pathname.getPath();
ext=路径子字符串(路径lastIndexOf(“.”+1);
返回exts.contains(ext);
}
};
最终文件[]filesFound=files.listFiles(过滤器);
列表=新的ArrayList();
如果(filesFound!=null&&filesFound.length>0){
for(文件:filesFound){
list.add(file.getName());
}
}
退货清单;
}

chech此链接感谢您的回复,但我不知道何时调用此方法以及字符串路径是什么意思。单击按钮,打开pic gif文件库,只需显示SD卡中所有gif的列表,然后选择一个即可。就像我们可以参考whatsapp媒体共享一样,点击gallery,我们可以获得图像、视频和GIF的列表。这里的字符串路径是绝对文件路径。