requestPermissions使用的例子
时间: 2024-03-14 19:40:00 浏览: 21
requestPermissions是Android中用于请求运行时权限的方法。以下是一个使用requestPermissions的例子:
```java
// 在Activity中调用requestPermissions方法请求权限
private static final int REQUEST_CODE = 1;
private void requestPermission() {
String[] permissions = {Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE};
ActivityCompat.requestPermissions(this, permissions, REQUEST_CODE);
}
// 处理权限请求结果的回调方法
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (requestCode == REQUEST_CODE) {
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// 权限被授予,可以执行相应操作
Toast.makeText(this, "权限已授予", Toast.LENGTH_SHORT).show();
} else {
// 权限被拒绝,无法执行相应操作
Toast.makeText(this, "权限被拒绝", Toast.LENGTH_SHORT).show();
}
}
}
```
在上述例子中,首先定义了一个请求权限的方法requestPermission。在该方法中,我们传入了需要请求的权限数组,并调用了ActivityCompat.requestPermissions方法来请求权限。
然后,在Activity中重写了onRequestPermissionsResult方法,该方法会在用户对权限请求做出响应后被调用。在该方法中,我们可以根据请求码和授权结果来判断权限是否被授予。如果权限被授予,可以执行相应操作;如果权限被拒绝,无法执行相应操作。