【问题标题】:Flutter Image File share Permission DenialFlutter 图像文件共享权限被拒绝
【发布时间】:2021-06-23 23:32:45
【问题描述】:

当我尝试通过共享插件共享我的目录图像时!图片不会分享!问我许可那是什么???谁能给我解决方案

    FlatButton(
           onPressed: () async {
            Directory dir = await getApplicationDocumentsDirectory();
            File testFile = new File("${dir.path}/image.png");
            FlutterShareFile.shareImage(dir.path, "image.png", ShareFileType.image);
          },
        )

我收到此类警告:

E/DatabaseUtils(8123): java.lang.SecurityException: Permission Denial: 从 pid=6574 读取 androidx.core.content.FileProvider uri content://com.photogranth.watermark.contentprovider/images/image.png, uid=1000 需要导出提供者,或者 grantUriPermission() E/DatabaseUtils(8123):在 android.content.ContentProvider.enforceReadPermissionInner(ContentProvider.java:742) E/DatabaseUtils(8123):在 android.content.ContentProvider$Transport.enforceReadPermission(ContentProvider.java:615) E/DatabaseUtils(8123):在 android.content.ContentProvider$Transport.enforceFilePermission(ContentProvider.java:606) E/DatabaseUtils(8123):在 android.content.ContentProvider$Transport.openTypedAssetFile(ContentProvider.java:520) E/DatabaseUtils(8123):在 android.content.ContentProviderNative.onTransact(ContentProviderNative.java:307) E/DatabaseUtils(8123):在 android.os.Binder.execTransactInternal(Binder.java:1021) E/DatabaseUtils(8123): 在 android.os.Binder.execTransact(Binder.java:994)

【问题讨论】:

    标签: flutter permissions warnings share


    【解决方案1】:

    您是否将此添加到您的 AndroidManifest.xml 文件中?

    <application>
    ...
    <provider
        android:name="androidx.core.content.FileProvider"
        android:authorities="${applicationId}.provider"
        android:exported="false"
        android:grantUriPermissions="true">
        <meta-data
            android:name="android.support.FILE_PROVIDER_PATHS"
            android:resource="@xml/provider_paths"/>
    </provider>
    </application>
    

    【讨论】:

    • 是的,我添加了这个代码 unfourtunetlly 错误再次出现 ===>> * 出了什么问题:在根项目 'flutter_plugin_android_lifecycle' 中找不到任务 'assembleAarRelease'。 * 尝试:运行 gradlew 任务以获取可用任务列表。使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。运行 --scan 以获得完整的见解。 * 在help.gradle.org BUILD FAILED in 0s 获得更多帮助例外:由于上述问题,无法构建插件flutter_plugin_android_lifecycle。
    • 你在哪里将它添加到你的 XML 中,这个错误'assembleAarRelease' not found in root project 有时它意味着它在错误的地方。另外,请转到 build.gradle 中的 compileSdkVersion compileSdkVersion to 30 或 29,如果是 28,则不要使用 28。请报告发生的情况。
    • 这是我的 xml:
    • 看看这篇帖子stackoverflow.com/questions/30790768/…,请看
    猜你喜欢
    • 1970-01-01
    • 2012-05-31
    • 1970-01-01
    • 2021-02-28
    • 2019-03-20
    • 2021-10-31
    • 1970-01-01
    • 1970-01-01
    • 2023-03-19
    相关资源
    最近更新 更多