我试图请求使用相机应用拍照并将其保存到文件系统的权限。我'使用
ActivityCompat.requestPermissions(this,new String[]{
Manifest.permission.CAMERA,
Manifest.permission.READ_EXTERNAL_STORAGE
}, PERMISSIONS_MULTIPLE_REQUEST);
但这仅显示一个询问用户外部存储的对话框。如果我尝试访问相机,我会得到一个例外
java.lang.RuntimeException: Unable to start activity ComponentInfo{it.cosmopolitans.around/it.cosmopolitans.around.Boundary.ImageTakenActivity}: android.os.FileUriExposedException: file:///storage/emulated/0/Pictures/Hello%20Camera/IMG_20170709_194415.jpg exposed beyond app through ClipData.Item.getUri()
在这一行
startActivityForResult(intent, CAMERA_CAPTURE_IMAGE_REQUEST_CODE);
如果我在marshmellow设备上运行应用程序,一切都很好
答案 0 :(得分:0)
要从相机保存照片结果,您需要WRITE_EXTERNAL_STORAGE
权限。
试试这个:
ActivityCompat.requestPermissions(this,
new String[]{ Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE },
PERMISSIONS_MULTIPLE_REQUEST);