Access to the path "/storage/emulated/0/Video" is denied.
时间: 2023-12-18 07:02:57 浏览: 175
这个错误提示是因为你的应用程序没有权限访问 "/storage/emulated/0/Video" 这个路径。在 Android 系统中,应用程序需要获得特定的权限才能访问设备上的文件系统。
你可以通过在应用程序的 AndroidManifest.xml 文件中添加以下权限来解决这个问题:
```xml
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
```
这个权限将允许你的应用程序访问设备上的外部存储器。同时,还需要在运行时请求该权限,以确保用户已经同意授予应用程序访问外部存储器的权限。你可以使用以下代码在运行时请求该权限:
```java
if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE)
!= PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
MY_PERMISSIONS_REQUEST_WRITE_EXTERNAL_STORAGE);
}
```
请注意,MY_PERMISSIONS_REQUEST_WRITE_EXTERNAL_STORAGE 是一个自定义请求代码,你需要在 onRequestPermissionsResult 回调方法中处理该请求。
```java
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (requestCode == MY_PERMISSIONS_REQUEST_WRITE_EXTERNAL_STORAGE) {
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// 在此处执行你的操作,已获得 WRITE_EXTERNAL_STORAGE 权限
} else {
// 用户拒绝了权限请求
}
}
}
```
在你的应用程序中添加这些代码,就可以在运行时请求 WRITE_EXTERNAL_STORAGE 权限,并访问设备上的外部存储器了。
阅读全文