【问题标题】:Trying to get a full list of photos in DCIM folder尝试获取 DCIM 文件夹中的完整照片列表
【发布时间】:2022-01-28 03:48:08
【问题描述】:

我尝试了几种方法来访问该文件夹: 1)

File dcimDir = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM).toString());
  1. 更直接

    文件 ais = Environment.getExternalStorageDirectory(); 字符串 mpath = ais.getAbsolutePath() + "/DCIM/Camera"; 文件 pdir = new File(mpath);

不管怎样,

fileList = pdir.listFiles();

实际上手机中有很多图片时返回零文件。我已经验证了这几种方法,包括通过 FTP。

上面的 mpath 计算结果为 /storage/emulated/0/DCIM/Camera。 当我尝试访问 /Music 时,它会返回正确的文件列表。 我也尝试过 /Notifications,它也有效。 因此,似乎某些文件夹返回为空。 由于应用程序已指定,我没有收到任何异常

知道为什么只有某些文件夹(特别是 /DCIM/Camera)返回空吗?

【问题讨论】:

    标签: java android-camera


    【解决方案1】:

    好的,偶然发现了解决方案:正如怀疑的那样,它与权限有关。尽管我的测试应用程序有 WRITE_EXTERNAL_STORAGE,但在手机上,该应用程序没有这样的权限,文件和媒体。我不得不手动完成。在通过 Android Studio 进行初始安装期间,没有提示权限,并且在运行时,应用程序没有收到错误或异常。至少可以说,只是空的文件夹内容非常容易误导和混淆。

    在进一步调试的某个时候,权限被删除了,我不得不再次手动授予它。我不知道该怪谁:Android 12 还是 Android Studio。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-12-10
      • 2014-04-18
      • 1970-01-01
      • 2019-03-05
      • 1970-01-01
      • 1970-01-01
      • 2014-03-07
      相关资源
      最近更新 更多