最新版Android Studio 读写权限申请
时间: 2024-09-11 11:12:04 浏览: 144
在最新版的Android Studio(通常指Android Studio 4.x及以上版本),应用程序在需要访问用户设备上的某些敏感数据或者功能时,会采用Android 6.0(API级别23)及以后引入的运行时权限机制。当你尝试访问如相机、存储、位置等权限时,系统不再像以前那样直接授予应用,而是会在第一次请求时询问用户。
在AndroidManifest.xml文件中,你需要声明相应的<uses-permission>标签来获取权限,例如:
```xml
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- 其他权限声明 -->
<activity ...>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<service ...>
<!-- 如果你的服务需要特定权限 -->
<permission android:name="your.package.permission.ACCESS_LOCATION" />
<uses-permission android:name="your.package.permission.ACCESS_LOCATION" />
</service>
```
在实际的代码中,你可以使用`ContextCompat.checkSelfPermission()`检查权限是否已授予,并通过` ActivityCompat.requestPermissions()`发起权限请求,比如:
```java
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.CAMERA}, REQUEST_CAMERA_PERMISSION);
}
```
请求完成后,记得处理用户的响应,例如在`onRequestPermissionsResult()`回调中处理结果。
阅读全文