Android Studio中的相机存储权限

时间:2015-11-27 15:54:49

标签: java android android-studio permissions camera

我正在尝试创建一个自动备份应用,其中从相机拍摄的所有照片都将上传到Cloudinary。

使用Android设备监视器,我发现Android Studio中Camera图像的存储位置是“/ storage / 0804-0A1C / DCIM / Camera”,如下所示:

ADM screenshot

但是,由于权限(?),我无法从此目录中读取。我确保将WRITE_EXTERNAL_STORAGE添加到清单,但是canRead()返回false。我可以做些什么来获取我的代码?

class UploadPhotos implements Runnable {

    @Override
    public void run() {
        File storageDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM);
        System.out.println("--------dir " + storageDir + " " + storageDir.canRead());
        String[] files = storageDir.list();
        if (files != null) {
            System.out.println("code does not get this far, files == null");
            for (String file : files) {
                if (new File(storageDir + file).isDirectory()) {
                    String[] subFiles = new File(storageDir + file).list();
                    for (int i = 0; i < subFiles.length; i++) {
                        if (new File(subFiles[i]).isFile()) {
                            uploadFile(new File(subFiles[i]));
                        }
                    }
                } else {
                    uploadFile(new File(file));
                }
            }
        }

    }
}

0 个答案:

没有答案