【问题标题】:requires android.permission.WRITE_EXTERNAL_STORAGE, or grantUriPermission()需要 android.permission.WRITE_EXTERNAL_STORAGE,或 grantUriPermission()
【发布时间】:2023-01-02 15:24:15
【问题描述】:

使用 Image-Picker 包并运行时,显示此异常。拍摄图像后图像未显示在容器中..

【问题讨论】:

    标签: flutter dart


    【解决方案1】:

    除了需要添加 WRITE_EXTERNAL_STORAGEREAD_EXTERNAL_STORAGE 到你的 android/app/src/main/AndroidManifest.xml

    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.xxx.yyy">
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
        <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    ...
    </manifest>
    

    你还需要运行时请求权限,通过使用permission_handler包:

    import 'package:simple_permissions/simple_permissions.dart';
    
    PermissionStatus permissionResult = await SimplePermissions.requestPermission(Permission. WriteExternalStorage);
    if (permissionResult == PermissionStatus.authorized){
      // code of read or write file in external storage (SD card)
    }
    

    笔记:

    1. 运行SimplePermissions.requestPermission第一次,app会弹出一个窗口,你必须点击ALLOW

      给予许可。

      1. 如果您已经单击了DENY,则卸载调试应用程序并重新调试以安装并修复此问题 -> 触发弹出窗口并让您有机会单击ALLOW

    【讨论】:

    猜你喜欢
    • 2016-02-05
    • 1970-01-01
    • 2018-06-19
    • 1970-01-01
    • 1970-01-01
    • 2023-01-05
    • 1970-01-01
    • 2015-08-28
    • 1970-01-01
    相关资源
    最近更新 更多