是否有办法通过接收我上传到Cloud Firestore的URL将图像下载到图库?

时间:2019-06-23 14:21:07

标签: firebase flutter dart google-cloud-firestore

我将一些URL存储到Cloud Firestore,并成功将这些图像显示到我的应用程序中,但问题是“可以使用该URL下载图像吗?” 如果可以的话请帮助我

我看了很多教程,但找不到任何解决方案,我什至不知道它的可能,请描述您的答案。

Application.FindFormat.Borders()

1 个答案:

答案 0 :(得分:0)

您尝试过Image Picker Saver还是Network to File Image?这些软件包是专门为通过URL下载图像而创建的。

我尝试过Image Downloader,并且可以正常工作:

    import 'package:flutter/material.dart';
    import 'package:image_downloader/image_downloader.dart';

    class FullScreenImagePage extends StatefulWidget {
      final String imgPath;
      FullScreenImagePage(this.imgPath);
      @override
      _FullScreenImagePageState createState() => _FullScreenImagePageState();
    }

    class _FullScreenImagePageState extends State<FullScreenImagePage> {

      @override
      Widget build(BuildContext context) {
        return Scaffold(
            body: Column(children: <Widget>[
          Expanded(
            child: Container(
                decoration: BoxDecoration(
                  image: DecorationImage(
                    image: NetworkImage(widget.imgPath),
                    fit: BoxFit.cover,
                  ),
                ),
                child: Container()),
          ),
          RaisedButton(
      onPressed: () => _onImageSaveButtonPressed(widget.imgPath),
              child: Text("Press me"))
        ]));
      }

      void _onImageSaveButtonPressed(String url) async {
        await ImageDownloader.downloadImage(url,
            destination: AndroidDestinationType.directoryPictures);
      }
    }

别忘了将以下内容添加到AndroidManifest for Android

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>