我有一个应用程序,用户可以从相机拍摄并查看它。
对于该功能,我在SD卡中创建一个文件,用于将从摄像机返回的数据存储到创建的文件
每当我创建目录时,我都会收到错误。
com.cyanogenmod.filemanager.console.InsufficientPermissionsException
这是创建目录的代码。
public static File getOutputMediaFile(int type) {
File mediaStorageDir = new File(
Environment
.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES),
MediaConstants.BASE_DIRECTORY);
if (!mediaStorageDir.exists()) {
if (!mediaStorageDir.mkdirs()) {
//Getting error here
return null;
}
}
//Code to create file name in the directory
}
我知道我的应用程序没有足够的权限在外部存储中创建目录。请帮助我授予我的应用程序创建目录的权限
答案 0 :(得分:2)
您无需root权限即可执行此操作。相反,您只需要适当的文件权限:
android.permission.READ_EXTERNAL_STORAGE
android.permission.WRITE_EXTERNAL_STORAGE
您应该在清单中为这些声明添加<uses-permission>
声明。此外,对于Android M,您应query these permissions at runtime拨打requestPermissions()和checkSelfPermission()。另请参阅:permissions和saving files文档。
答案 1 :(得分:0)