【问题标题】:Saving photos to DCIM/Camera - why aren't they showing up in Photos app?将照片保存到 DCIM/相机 - 为什么它们没有出现在照片应用程序中?
【发布时间】:2014-11-30 18:20:54
【问题描述】:

我有一个自定义相机应用程序。

我正在使用 FOS 保存图像(经过一些处理),写入我在使用 OpenCV Mats 操作图像后得到的 jpeg 字节:

File photo=new File(dir, getFileName()); // [external_storage]/DCIM/Camera/id.jpg
FileOutputStream fos=new FileOutputStream(photo.getPath());
fos.write(jpeg[0]);
fos.close();

使用文件管理器,我可以看到图像已正确保存到DCIM/Camera 目录,以及使用 Google 相机应用拍摄的照片。但是,它们不会显示在手机上的照片应用程序中。我是否需要设置某种 EXIF 数据才能发生这种情况,还是发生了其他事情?

【问题讨论】:

    标签: android camera


    【解决方案1】:

    保存照片后,添加此行以让照片应用知道有新照片:

    sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.parse("file://" + photo.getAbsolutePath())));
    

    【讨论】:

      【解决方案2】:

      遗漏的是保存文件后画廊没有刷新。

      这是一个小sn-p

      sendStickyBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://"+ Environment.getExternalStorageDirectory())));
      

      并在 androidmanifest.xml 中添加权限

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-10-30
        • 1970-01-01
        • 2015-12-29
        • 1970-01-01
        • 2014-08-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多