it-swarm.com.de

Wie kann ich ein Bild mit Flutter in der Fotogalerie speichern?

Meine Flatter-App verwendet das Paket camera , um ein Foto aufzunehmen, das ich im Datenverzeichnis der Anwendung speichere (abgerufen von path_provider und der Funktion getApplicationDocumentsDirectory()).

Wie kann ich diese Bilddatei in der Fotogalerie des Telefons speichern? Mir ist aufgefallen, dass das Paket image_pickerreading aus der Galerie zulässt, aber wie kann ich darauf schreiben? 

7
Duncan Jones

Leider macht das Flattern diese Funktionalität derzeit nicht verfügbar. Es scheint jedoch ein Kandidat für ein Plugin zu sein.

Wenn Sie motiviert genug sind, können Sie platform channels verwenden, um vom Flattern zum nativen Android-Code (und iOS-Code) zu kommunizieren, über den Sie vollen Zugriff auf die Galerie erhalten. Bonuspunkte, wenn Sie es zu einem Plugin machen und veröffentlichen!

6
rmtmckenzie

Es gibt ein Plugin, das dies unterstützt.

https://pub.dev/packages/image_gallery_saver

Ich habe es getestet und es funktioniert gut.

2
Ares

https://pub.dev/packages/gallery_saver

dieses Plugin speichert Bilder und Videos in der Galerie/Fotos.

Sie müssen lediglich den Pfad zur temporären Datei angeben, die Sie von Camera erhalten haben (oder sogar die Netzwerk-URL, sie funktioniert auch):

GallerySaver.saveVideo(recordedVideo.path);
GallerySaver.saveImage(recordedImage.path);
1
jelenap

Ich habe das Plugin gemacht. Bitte probieren Sie es aus, wenn Sie möchten.

https://pub.dartlang.org/packages/image_downloader#-readme-tab-

update

Ich werde erklären, wie man es benutzt.

Fügen Sie dies der pubspec.yaml -Datei Ihres Pakets hinzu:

dependencies:
  image_downloader: ^0.9.0

Geben Sie anschließend die Berechtigung für jedes Gerät an.

Schreiben Sie einfach folgendes und das Bild wird gespeichert.

ImageDownloader.downloadImage(url);
1
ko2ic