首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >[颤振]:未处理的异常:MissingPluginException(在通道image_gallery_saver上没有为方法saveImageToGallery找到实现)

[颤振]:未处理的异常:MissingPluginException(在通道image_gallery_saver上没有为方法saveImageToGallery找到实现)
EN

Stack Overflow用户
提问于 2021-11-08 12:59:22
回答 1查看 1.5K关注 0票数 0

问题

我试图将一个小部件图像存储到电话库,所以我实现了image_gallery_saver插件。不幸的是,当我调用此方法时,我一直收到以下错误:

代码语言:javascript
运行
复制
Unhandled Exception: MissingPluginException(No implementation found for method saveImageToGallery on channel image_gallery_saver)#0      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:154:7)
<asynchronous suspension>
#1      ImageGallerySaver.saveImage (package:image_gallery_saver/image_gallery_saver.dart:20:9)
<asynchronous suspension>
#2      InitiatePaymentState.saveImagetoGallery (package:scambio/initiate_payment.dart:611:20)
<asynchronous suspension>
#3      InitiatePaymentState.build.<anonymous closure> (package:scambio/initiate_payment.dart:297:21)
<asynchronous suspension>

我的代码:

插件名为:

代码语言:javascript
运行
复制
Future<String> saveImagetoGallery(Uint8List image) async{
    await [Permission.storage].request();
    final name = 'StasticQRcode_$getVendorShopName()_$_amount';
    final result = await ImageGallerySaver.saveImage(image, quality: 100, name: name);
    return result['filePath'];
  }

  • pubspec.yaml:

代码语言:javascript
运行
复制
dependencies:
  flutter:
    sdk: flutter
  http :
  intl:
  cupertino_icons: ^1.0.3
  pin_code_fields: ^7.3.0
  flutter_secure_storage: ^4.2.1
  iban: ^1.0.1
  sqflite: ^2.0.0+4
  path: ^1.6.4
  webview_flutter : ^2.3.0
  qr_flutter: ^4.0.0 #qrcode generation
  qrcode: ^1.0.4 #qrcode scanning
  url_launcher: ^6.0.12 #launching url
  uuid: ^3.0.5
  encrypt: ^5.0.1
  simple_rsa: ^0.0.5
  crypto: ^3.0.1
  crypto_keys: ^0.3.0
  pointycastle: ^3.3.4
  # capture screenshot
  screenshot: ^1.2.3
  #image save
  image_gallery_saver: ^1.7.1
  permission_handler:

  • info.plist

代码语言:javascript
运行
复制
<dict>
    <key>NSPhotoLibraryUsageDescription</key>
    <string>This app needs to use Photos</string>
<...>

  • AndroidManifest.xml

代码语言:javascript
运行
复制
     <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"/>
    <application
        android:name="${applicationName}"
        android:label="scambio"
        android:requestLegacyExternalStorage="true"
        android:icon="@mipmap/ic_launcher">

使用的解决方案

我尝试了下面所有的解决方案,但都没有奏效。

  • 重新安装应用程序。
  • 添加shrinkResources false,以及minifyEnabled false在build
  • 干净中,然后再安装。

PS。我最近升级了颤振,似乎升级后实现的所有插件都无法工作。难道这就是插件不能工作的原因吗?

如有任何建议,将不胜感激!

EN

回答 1

Stack Overflow用户

发布于 2021-11-08 17:11:43

你评论了许可请求。我想你不是在批准。

我查过插件了。我觉得你应该重新访问这个网站。https://pub.dev/packages/image_gallery_saver

iOS

您的项目需要快速创建。将以下键添加到您的Info.plist文件中,位于

代码语言:javascript
运行
复制
NSPhotoLibraryAddUsageDescription 

描述为什么你的应用程序需要照片库的许可。这称为隐私-图片库添加了可视化编辑器中的用法说明

安卓

您需要请求存储权限才能将图像保存到图库。您可以使用flutter_permission_handler处理存储权限。在Android 10中,打开清单文件并将这一行添加到应用程序标记中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69883867

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档