FileSystemException:创建失败,路径 = '/storage/emulated/0/4k'(操作系统错误:权限被拒绝,errno = 13)颤振

Posted

技术标签:

【中文标题】FileSystemException:创建失败,路径 = \'/storage/emulated/0/4k\'(操作系统错误:权限被拒绝,errno = 13)颤振【英文标题】:FileSystemException: Creation failed, path = '/storage/emulated/0/4k' (OS Error: Permission denied, errno = 13) FlutterFileSystemException:创建失败,路径 = '/storage/emulated/0/4k'(操作系统错误:权限被拒绝,errno = 13)颤振 【发布时间】:2021-07-09 02:46:30 【问题描述】:

我已经添加了将文件下载到本地存储所需的所有内容,但仍然出现此错误

在清单中

   <uses-permission android:name="android.permission.INTERNET"/>
   <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
   <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
   <uses-permission android:name="android.permission.ACCESS_MEDIA_LOCATION"/>
       

  android:requestLegacyExternalStorage="true"
  android:hardwareAccelerated="true"

在 pubspec.yaml 中

permission_handler: ^6.1.1

在 Build.gradle 中

compileSdkVersion 30
minSdkVersion 22
targetSdkVersion 30


 Future<bool> _requestPermission(Permission permission, Permission permission3,
      Permission permission4) async 
    print("xxxx IN ");

    if (await permission.isGranted) 
      print('xxxx ohhh');
      return true;
     else 
      await permission.request();
      .then((value) => () 
            print("xxxx value" + value.toString());
            if (value == PermissionStatus.granted) 
              print("xxxx PERMISSION GRANTED ");
              return true;
             else 
              print("xxxx PERMISSION DENIED ");
            
          )
      .whenComplete(() => print('xxxx COMPLETED'))
      .onError((error, stackTrace) => () 
            print("xxxx onError " + error);
            print("xxxx onError " + stackTrace.toString());
          )
      .catchError((onError) => () 
            print('xxxx catchError ' + onError.toString());
          );
      print("xxxx OUT ");
      // var result2 = await permission3.request();
      // var result3 = await permission4.request();

    
    return false;
  

从此函数查看打印的内容 没有从 then() 开始打印...

请帮帮我:)

【问题讨论】:

【参考方案1】:

application标签中使用android:requestLegacyExternalStorage="true"而不是在&lt;activity&gt;标签中:

<application         
    android:requestLegacyExternalStorage="true" > 

【讨论】:

以上是关于FileSystemException:创建失败,路径 = '/storage/emulated/0/4k'(操作系统错误:权限被拒绝,errno = 13)颤振的主要内容,如果未能解决你的问题,请参考以下文章

FileSystemException:无法检索文件长度(操作系统错误:没有这样的文件或目录,errno = 2)

FileSystemException:无法打开文件,路径 = '/storage/0/emulated/myfolder/myfile.txt'(操作系统错误:没有这样的文件或目录,errno =

java.nio.file.FileSystemException: D:kafka_2.12-2.1.0kafka_2.12-2.1.0logs\__consumer_offsets-30

即使在授予存储权限后权限也被拒绝

错误记录Flutter 混合开发报错 ( java.nio.file.FileSystemException: xxx/R.jar: 另一个程序正在使用此文件,进程无法访问。 )

Flutter:打开文件过多异常(MacOS)