在应用程序的AndroidManifest.xml文件中添加以下权限声明代码:
同时,在应用程序运行时,可以通过以下代码请求权限:
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
// Android版本低于6.0,无需请求权限
return true;
}
int permission_audio = ContextCompat.checkSelfPermission(this,
Manifest.permission.READ_MEDIA_AUDIO);
int permission_storage = ContextCompat.checkSelfPermission(this,
Manifest.permission.READ_EXTERNAL_STORAGE);
if (permission_audio != PackageManager.PERMISSION_GRANTED
|| permission_storage != PackageManager.PERMISSION_GRANTED) {
// 如果没有相应权限,请求
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.READ_MEDIA_AUDIO,
Manifest.permission.READ_EXTERNAL_STORAGE},
REQUEST_CODE_PERMISSIONS);
return false;
}
// 已经有权限,直接返回true
return true;
其中,REQUEST_CODE_PERMISSIONS为请求权限的请求码,需要定义为整数。使用ContextCompat.checkSelfPermission()方法检查是否已经获得了权限,并使用ActivityCompat.requestPermissions()方法请求权限。如果用户拒绝授予权限,可以在onRequestPermissionsResult()方法中处理。