Flutter 如何在Flatter中共享来自API(URL)的图像?

Flutter 如何在Flatter中共享来自API(URL)的图像?,flutter,dart,flutter-layout,flutter-dependencies,Flutter,Dart,Flutter Layout,Flutter Dependencies,在这里,我想分享我通过API获得的图像。我尝试了不同的方法来实现这个功能,但我没有得到任何解决方案,因为每个解决方案只有一个图像 确切地说,我从Url获取多个图像,并在下一页中打开任何特定的图像。所以,我想分享我在另一页打开的图像 我尝试了共享图像,但没有成功。每当我尝试共享那图像时,Imageurl使用设备上的共享选项共享,但我希望共享图像而不是图像的url我如何才能做到这一点?我在我的项目中使用了这个选项,并且将图像链接传递给它对我很有效 例如: 你可以使用这个插件 安装它,然后获取依赖项:

在这里,我想分享我通过
API
获得的
图像。我尝试了不同的方法来实现这个功能,但我没有得到任何解决方案,因为每个解决方案只有一个图像

确切地说,我从
Url
获取多个图像,并在下一页中打开任何特定的
图像。所以,我想
分享我在另一页打开的
图像

我尝试了
共享图像
,但没有成功。每当我尝试
共享
图像
时,
Image
url
使用
设备上的
共享
选项
共享
,但我希望
共享
图像
而不是
图像的
url
我如何才能做到这一点?

我在我的项目中使用了这个选项,并且将图像链接传递给它对我很有效

例如:

你可以使用这个插件

  • 安装它,然后获取依赖项:

    dependencies:
      esys_flutter_share: ^1.0.2 
    
  • 将插件导入您的代码:

    import 'package:esys_flutter_share/esys_flutter_share.dart';
    
  • 使用以下代码:

    var request = await HttpClient().getUrl(Uri.parse('https://yourImageURL.jpg'));
    var response = await request.close();
    Uint8List bytes = await consolidateHttpClientResponseBytes(response);
    await Share.file('ESYS AMLOG', 'amlog.jpg', bytes, 'image/jpg');
    

  • 此插件仅用于文本数据。所以,这不适用于共享图像。@VitorAs截止日期,该软件包自2019年以来就没有人真正维护过。不推荐。有些问题没有解决或合并。
    var request = await HttpClient().getUrl(Uri.parse('https://yourImageURL.jpg'));
    var response = await request.close();
    Uint8List bytes = await consolidateHttpClientResponseBytes(response);
    await Share.file('ESYS AMLOG', 'amlog.jpg', bytes, 'image/jpg');