我使用以下代码片段在MediaStore缓存中插入Image:
MediaStore.Images.Media.insertImage(getContentResolver(), selectedFile.getParent() + file.separator + selectedFile.getName(), selectedFile.getName(),null);
插入正常,但它也会在同一路径上创建另一个图像缩略图。这在图库中不可见,但在使用文件浏览器浏览时,此图像缩略图可见。如何在此处停止创建此图像缩略图,以免混淆用户。
答案 0 :(得分:6)
MediaStore.Images.Media.insertImage()
的文档说明了:
插入图片并创建缩略图 为了它。
您实际需要做的是访问Media Scanner服务。 默认情况下,该服务在启动期间或插入SD卡后运行。您可以强制它使用意图运行,但最终会重新扫描整个SD卡。
当然,有一个更好的解决方案:
如果您正在开发API级别8或更高级别(Android 2.2),请使用
来自scanFile
的{{1}}静态函数,记录为here。
对于API 7或更低版本,它有点复杂,但您可以使用以下帖子中最佳解释的包装器将所有内容放在一起: dynamically add pictures to gallery widget