Pakete, Repositories und App-Kategorien suchen

Paketdetailsv1.0.1

photo_gallery_flutter

Ein Flutter-Plugin, das Bilder und Videos aus der mobilen Native-Galerie abruft.

AndroidiOS
30-Tage-Downloads
12
Likes
4
Pub-Punkte
140

Paket installieren

flutter pub add photo_gallery_flutter

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

Ein Flutter-Plugin, das den Zugriff auf Bilder und Videos ermöglicht, die in der nativen Fotogalerie von Android- und iOS-Geräten gespeichert sind. Es bietet eine einfache Schnittstelle zum Abrufen von Mediendateien und ist ideal für Apps, die eine Galerieintegration erfordern, wie z. B. Foto-Editoren, soziale Netzwerke oder Medienverwaltungstools. Das Plugin nutzt plattformspezifische APIs, um Kompatibilität und Leistung auf beiden wichtigsten mobilen Betriebssystemen sicherzustellen.

Anwendungsfälle

  • Integration von native Galeriezugriff in Fotoanwendungen
  • Medien-Auswahl-Schnittstellen erstellen
  • Bild-/Video-Uploads aus der Gerätebibliothek aktivieren
  • Foto-Editierwerkzeuge mit lokalen Medien erstellen
  • Entwicklung von Social-Media-App-Funktionen

Hauptmerkmale

  • Cross-Plattform-Unterstützung für Android und iOS
  • Einfache API zum Abrufen von Mediendateien
  • Zugriff auf Bilder und Videos
  • Native Leistung und Zuverlässigkeit
  • Einfache Integration über pub.dev

Geeignet für

  • Flutter-Entwickler, die medienintensive Apps erstellen
  • Apps, die Galerie-Browsing-Funktionen benötigen
  • Projekte, die sichere native Medienzugriffe erfordern
  • Entwickler, die eine minimale Einrichtung für die Galerieintegration suchen

Hinweise

  • Erfordert die entsprechenden Berechtigungen auf beiden Plattformen
  • Kann Einschränkungen bei großen Medienbibliotheken haben
  • Abhängig von nativen Galerie-APIs, die je nach Gerät variieren können
  • Nicht geeignet für cloudbasierte Medienabruf
  • Eingeschränkte Anpassung der Galerie-Oberfläche

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

Photo Gallery Flutter

pub package

A Flutter plugin that retrieves images and videos from mobile native gallery.

Installation

First, add photo_gallery_flutter as a dependency in your pubspec.yaml file.

iOS

Add the following keys to your Info.plist file, located in <project root>/ios/Runner/Info.plist:

NSPhotoLibraryUsageDescription - describe why your app needs permission for the photo library. This is called Privacy - Photo Library Usage Description in the visual editor.

<key>NSPhotoLibraryUsageDescription</key>
<string>Example usage description</string>
Android

Add the following permissions to your AndroidManifest.xml, located in <project root>/android/app/src/main/AndroidManifest.xml:

<manifest ...>
    <uses-permission
        android:name="android.permission.READ_EXTERNAL_STORAGE"
        android:maxSdkVersion="32" />
    <uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
    <uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
<manifest/>

Usage

  • Listing albums in the gallery
final List<Album> imageAlbums = await PhotoGalleryFlutter.listAlbums();
final List<Album> videoAlbums = await PhotoGalleryFlutter.listAlbums(
    mediumType: MediumType.video,
    newest: false,
    hideIfEmpty: false,
);
  • Listing media in an album
final MediaPage imagePage = await imageAlbum.listMedia();
final MediaPage videoPage = await imageAlbum.listMedia(
    skip: 5,
    take: 10,
);
final List<Medium> allMedia = [
    ...imagePage.items,
    ...videoPage.items,
];
  • Loading more media in a album
if (!imagePage.isLast) {
    final nextImagePage = await imagePage.nextPage();
    // ...
}
  • Getting a Medium
final Medium medium = await PhotoGalleryFlutter.getMedium(
  mediumId: "10",
  mediumType: MediumType.image
);
  • Getting a file
final File file = await medium.getFile();
final File file = await PhotoGalleryFlutter.getFile(mediumId: mediumId);
  • Getting thumbnail data
final List<int> data = await medium.getThumbnail();
final List<int> data = await PhotoGalleryFlutter.getThumbnail(mediumId: mediumId);

You can also specify thumbnail width and height on Android API 29 or higher; You can also specify thumbnail width, height and whether provider high quality or not on iOS:

final List<int> data = await medium.getThumbnail(
    width: 128,
    height: 128,
    highQuality: true,
);
final List<int> data = await PhotoGalleryFlutter.getThumbnail(
    mediumId: mediumId,
    mediumType: MediumType.image,
    width: 128,
    height: 128,
    highQuality: true,
);
  • Getting album thumbnail data
final List<int> data = await album.getThumbnail();
final List<int> data = await PhotoGalleryFlutter.getAlbumThumbnail(albumId: albumId);

You can also specify thumbnail width and height on Android API 29 or higher; You can also specify thumbnail width, height and whether provider high quality or not on iOS:

final List<int> data = await album.getThumbnail(
    width: 128,
    height: 128,
    highQuality: true,
);
final List<int> data = await PhotoGalleryFlutter.getAlbumThumbnail(
    albumId: albumId,
    mediumType: MediumType.image,
    newest: false,
    width: 128,
    height: 128,
    highQuality: true,
);
  • Displaying medium thumbnail

ThumbnailProvider are available to display thumbnail images (here with the help of dependency transparent_image):

FadeInImage(
    fit: BoxFit.cover,
    placeholder: MemoryImage(kTransparentImage),
    image: ThumbnailProvider(
        mediumId: mediumId,
        mediumType: MediumType.image,
        width: 128,
        height: 128,
        hightQuality: true,
    ),
)

Width and height is only available on Android API 29+ or iOS platform

  • Displaying album thumbnail

AlbumThumbnailProvider are available to display album thumbnail images (here with the help of dependency transparent_image):

FadeInImage(
    fit: BoxFit.cover,
    placeholder: MemoryImage(kTransparentImage),
    image: AlbumThumbnailProvider(
        album: album,
        width: 128,
        height: 128,
        hightQuality: true,
    ),
)

Width and height is only available on Android API 29+ or iOS platform. High quality is only available on iOS platform.

  • Displaying a full size image

You can use PhotoProvider to display the full size image (here with the help of dependency transparent_image):

FadeInImage(
    fit: BoxFit.cover,
    placeholder: MemoryImage(kTransparentImage),
    image: PhotoProvider(
        mediumId: mediumId,
    ),
)
```# photo_gallery_flutter

Kategorien

Abhängigkeiten

Abhängigkeiten 1 Einträge

  • plugin_platform_interface^2.0.2

Quell-Repository

Projekte, die dieses Paket verwenden

Noch keine Daten verfügbar.