如何分享从颤振下载的图像

Posted

技术标签:

【中文标题】如何分享从颤振下载的图像【英文标题】:How to share image downloaded from flutter 【发布时间】:2020-12-12 08:10:26 【问题描述】:

我使用颤振将小部件保存为颤振中的图像。我下载图像没有问题,但我在分享图像时遇到了麻烦。有没有办法在不离开应用程序的情况下共享下载的图像?

这是我现在的代码

   onPressed: () async 
    if (await Permission.storage.request().isGranted) 
      screenshotController.capture(pixelRatio: 1.5);
      screenshotController.capture().then((File image) async 
        await ImageGallerySaver.saveImage(image.readAsBytesSync());

        Navigator.of(context, rootNavigator: true).pop();
        Scaffold.of(context).showSnackBar(
          SnackBar(
            content: Text("Image Saved to Gallery"),
            duration: const Duration(seconds: 1),
          ),
        );
      ).catchError((onError) 
//                                    print(onError);
      );
     else 
      await Permission.storage.request();
    
  

【问题讨论】:

【参考方案1】:

您需要像处理任何其他文件一样处理图像。

如果你不打算在两个用户之间使用服务器,这有点棘手,因为其中一个必须充当一个,但如果你将使用服务器,我建议你关注这个帖子:

https://dev.to/carminezacc/advanced-flutter-networking-part-1-uploading-a-file-to-a-rest-api-from-flutter-using-a-multi-part-form-data-post-request-2ekm

它是最新的,可以帮助您编写应用程序代码,甚至是用 nodejs 编写的服务器示例。这篇文章的下一部分教你做你想做的事。

【讨论】:

我不确定你是否理解这个问题。有像 pub.dev/packages/share 这样的包允许共享文本。 我想以同样的方式分享图片 你不能。尝试从 whatsapp 或任何其他应用程序执行相同操作,他们将打开请求的应用程序。应用之间可以通过多种方式共享信息,但图片涉及到其他应用文件夹的访问权限,这是不允许的。 没有。图片来自我的应用程序。我有权访问它们。我只需要分享它们。例如,我使用 Intent 在 Java 中实现了这一点,而且很简单。 flutter 有点棘手 我明白了。对不起这个错误。您需要像打开任何其他文件而不是图像一样在颤振中打开图像。我会更新我的答案。

以上是关于如何分享从颤振下载的图像的主要内容,如果未能解决你的问题,请参考以下文章

将图像从 firebase 显示到颤振应用程序 [关闭]

如何在我的颤振应用程序中从 bing web search apiv7 获取图像

无法在 iOS 模拟器上使用颤振图像选择器选择图像

颤振,如何将图像网络设置为壁纸2021

如何将我生成的 QR 图像保存到图库中?使用颤振

如何将相机捕获的图像转换为带有颤振的base64