安卓保存图片到图库demo总结

Android保存图片到图库Demo总结


方法截图

实现方法主要分为三种

  • 通过MediaStore,不推荐,一次性保存两张图片,一张在file.getAbsolutePath()里,一张在Pictures里,消耗硬盘空间
 MediaStore.Images.Media.insertImage(context.getContentResolver(),file.getAbsolutePath(),fileName,null);
  • 通过广播
 Uri contentUri = Uri.fromFile(file);
 Intent mediaScanIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE,contentUri);
 context.sendBroadcast(mediaScanIntent);

特别注意,文件的保存路径必须是Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES)

  • 通过MediaScannerConnection,推荐使用

如果我们对时序有要求,并且需要制定文件保存路径的话,最好的方式就是直接使用 MediaScannerConnection 类进行操作,并且这也应该是兼容最好的方式。

getExternalStorageDirectory()和getExternalFilesDir()的区别

app专属文件就是那些只有该app才可以使用的文件,例如专属格式的电子书,app独立文件就是那些不依赖于某特定app的文件,例如照片。

App独立文件
这类文件当我们删除应用之后,还应该保留在手机上的,例如拍照的照片,不应该随着删除应用而被删除掉。对于这类文件,Android给我们提供了特定的目录,这些目录都是以DIRECTORY开头的,例如:DIRECTORY_MUSIC , DIRECTORY_PICTURES.

参考博客链接

posted @ 2021-05-20 18:20  计算机虫子  阅读(308)  评论(0编辑  收藏  举报