将gif保存到安卓相册中

5

使用https://github.com/koush/ion图片加载器将gif文件显示到ImageView中

我通过以下代码将jpg图像保存到相册中

    MediaStore.Images.Media.insertImage(
                                    getActivity().getContentResolver(), bitmap,
                                    "XXX", "Image1"); 

但是这种方法不能用于gif文件。

你有任何想法如何完成这个任务吗?


我在这里回答了。谢谢。访问此网址 - sohel yadav
2个回答

2
您可以使用以下代码保存gif。
  File file = new File(getBaseContext().getExternalCacheDir(),
                    "gif_name"+ ".gif");
            try {
                FileOutputStream fos = new FileOutputStream(file);
                fos.write(gif.getData());//gif is gif image object
                fos.flush();
                fos.close();
            } catch (IOException ioe) {
                ioe.printStackTrace();
            }

这段代码将把gif保存在外部SD卡的缓存目录中,但在图库中不可见。


gif.getData() 这个方法在哪里获取? - Zia Ur Rahman
Gif 表示从 API 获取的实际 gif。 - Rahul Kumar
我的gif文件位于外部存储器中,路径为/storage/emulated/0/Android/data/<PackageName>/files/<FolderName>/xyz.gif。现在我想将此文件保存/复制到图像库并在那里显示。如何做到这一点?因为我无法从String imagePath或file中获取.getData()方法。 - Zia Ur Rahman
首先告诉我在哪里获取这个方法getData(),然后如何使其在画廊中可见? - Zia Ur Rahman

2

位图是单一图像,因此此API不支持GIF。要保存GIF,您需要将GIF下载到外部存储器上的文件中,然后通知MediaScanner扫描它。然后它将出现在画廊中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接