我正在根据Android中的图片创建GIF。我创建.gif文件并使用FileOutputStream
保存,但我无法在SD卡或图库应用中的任何位置看到它。
File file = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), "test.gif");
FileOutputStream outStream = null;
try{
outStream = new FileOutputStream(file);
outStream.write(generateGIF());
outStream.close();
Log.v("Creating gif", "Gif saved");
}catch(Exception e){
e.printStackTrace();
}
return null;
generateGIF返回byteArray,一切正常,没有错误。 我错过了什么吗?
答案 0 :(得分:1)
您是否在AndroidManifest.xml中添加了这些标签?
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
这些标签告诉Android该应用想要访问SD卡。否则,Android会阻止请求,从而无法保存GIF。
答案 1 :(得分:1)
使用MediaScannerConnection
通知系统新文件。当媒体文件以及通过USB访问SD卡时MTP / PTP数据库刷新Gallery。