Medieninhalte auflisten und abrufen

Sobald ein Nutzer über die Picker API Medienelemente ausgewählt hat, können Sie Informationen zu diesen Elementen abrufen und auf ihre Inhalte zugreifen. In diesem Leitfaden wird beschrieben, wie du Medienelemente auflistest und abrufst.

Vorbereitung

  • Ablauf verstehen:Im Hilfeartikel Erste Schritte mit der Picker API finden Sie einen Überblick über den gesamten Prozess der Bildauswahl.
  • Vollständige Medienelementauswahl:Prüfen Sie, ob der Nutzer Medienelemente aus seiner Sitzung ausgewählt hat. Weitere Informationen finden Sie im Leitfaden zu Sitzungen.
  • Erforderliche Autorisierungsbereiche prüfen: Für die Arbeit mit Sitzungen ist der Bereich photospicker.mediaitems.readonly erforderlich. Weitere Informationen zu Bereichen finden Sie unter Autorisierungsbereiche.

Ausgewählte Medienelemente auflisten

  1. mediaItems.list-Endpunkt verwenden: Stellen Sie eine GET-Anfrage an https://photospicker.googleapis.com/v1/mediaItems und geben Sie sessionId als Abfrageparameter an.

  2. Paginierung (falls erforderlich)

    Wenn der Nutzer eine große Anzahl von Elementen auswählt, wird die Antwort möglicherweise auf mehrere Seiten aufgeteilt. Verwenden Sie das nextPageToken in der Antwort, um nachfolgende Seiten mit Ergebnissen abzurufen.

  3. Medienelemente verarbeiten: Die Antwort enthält ein Array von PickedMediaItem-Objekten, die jeweils ein ausgewähltes Medienelement darstellen. Diese Objekte enthalten wichtige Details wie:

    • id: Die eindeutige Kennung für das Medienelement.
    • baseUrl: Die Basis-URL, aus der du URLs erstellen kannst, um in verschiedenen Auflösungen auf den Inhalt des Medienelements zuzugreifen.
    • mimeType: Der MIME-Typ des Medienelements (z.B. „image/jpeg“ oder „video/mp4“).

Abgerufene Medienelemente abrufen

Sie benötigen ein gültiges OAuth 2.0-Zugriffstoken mit dem Bereich https://www.googleapis.com/auth/photospicker.mediaitems.readonly, um Ihre Anfragen zu autorisieren.

  • URL für den Inhalt erstellen:Verwende die baseUrl aus dem PickedMediaItem-Objekt. Hängen Sie die Auflösung oder das Dateiformat an die baseUrl an. Weitere Informationen finden Sie im Abschnitt zu Basis-URLs.

  • Inhalt abrufen:Stelle einen GET-Request an die Basis-URL des Medienelements. Die Antwort enthält die Bytes des Medienelements (Bild oder Video). Es gibt eine Reihe verschiedener baseURL-Optionen.

Basis-URLs

Basis-URLs in den Google Fotos APIs bieten Zugriff auf die Rohbytes von Medienelementen, sodass Ihre App sie herunterladen oder anzeigen kann. Diese URLs sind in den Antworten enthalten, wenn Alben aufgelistet (Mediathek API) oder auf Medienelemente zugegriffen wird (sowohl Mediathek- als auch Auswahl-APIs). Denken Sie daran, dass Basis-URLs zusätzliche Parameter benötigen, damit sie richtig funktionieren.

Für die Picker API:

Alle PickedMediaItem.mediaFile-Objekte enthalten einen baseUrl.

Basis-URLs bleiben 60 Minuten lang aktiv, können aber früher ablaufen, wenn der Nutzer die Berechtigungen Ihrer App über die Einstellungen seines Google-Kontos widerruft.

Library API:

Basis-URLs bleiben 60 Minuten lang aktiv.

Die verschiedenen Basis-URLs sind:

  • baseUrl: Direkt auf ein Foto oder die Miniaturansicht eines Videos zugreifen oder Videobytes herunterladen.
  • coverPhotoBaseUrl: Direkt auf das Cover des Albums zugreifen.
  • profilePictureBaseUrl: Direkt auf das Profilbild des Inhabers einer mediaItem zugreifen.

Basis-URLs für Bilder

Hier sind die Optionen, die Sie mit den Basis-URLs von Bildern verwenden können:

Parameter
w, h

Beschreibung

Die Parameter „width“, w und „height“, h

Wenn Sie auf ein Bildmedium wie ein Foto oder eine Miniaturansicht für ein Video zugreifen möchten, müssen Sie die Abmessungen angeben, die in Ihrer Anwendung angezeigt werden sollen. So kann das Bild auf diese Abmessungen skaliert werden, wobei das Seitenverhältnis beibehalten wird. Dazu müssen Sie die Basis-URL mit den erforderlichen Dimensionen zusammenführen, wie in den Beispielen gezeigt.

Beispiele:

base-url=wmax-width-hmax-height

Hier ist ein Beispiel für die Anzeige eines Medienelements, das maximal 2.048 Pixel breit und 1.024 Pixel hoch ist:

https://lh3.googleusercontent.com/p/AF....VnnY=w2048-h1024
c

Beschreibung

Der Parameter „crop“, c.

Wenn Sie das Bild auf die von Ihnen angegebene Breite und Höhe zuschneiden möchten, verknüpfen Sie die Basis-URL mit dem optionalen Parameter -c sowie den obligatorischen Parametern w und h.

Die Größe (in Pixeln) muss im Bereich [1, 16383] liegen. Wenn die Breite oder Höhe des Bildes die angeforderte Größe überschreitet, wird das Bild verkleinert und zugeschnitten, wobei das Seitenverhältnis beibehalten wird.

Beispiele:

base-url=wmax-width-hmax-height-c

In diesem Beispiel zeigt die Anwendung ein Medienelement an, das genau 256 Pixel breit und 256 Pixel hoch ist, z. B. ein Thumbnail:

https://lh3.googleusercontent.com/p/AF....VnnY=w256-h256-c
d

Beschreibung

Der Parameter „Herunterladen“, d.

Wenn Sie das Bild mit allen Exif-Metadaten außer den Standortmetadaten herunterladen möchten, verknüpfen Sie die Basis-URL mit dem Parameter d.

Beispiele:

base-url=d

In diesem Beispiel lädt die Anwendung ein Bild mit allen Metadaten außer den Standortmetadaten herunter:

https://lh3.googleusercontent.com/p/Az....XabC=d

Basis-URLs von Videos

Hier findest du eine Liste der Optionen, die du mit den Basis-URLs von Videos verwenden kannst:

Parameter
dv

Beschreibung

Wenn du auf die Bytes eines Videos zugreifen möchtest, mediaItem, konkateniere den Parameter baseUrl mit dem Parameter dv für den Download des Videos.

Mit dem Parameter dv wird eine hochqualitative, transcodierte Version des Originalvideos angefordert. Der Parameter ist nicht mit den Parametern w und h kompatibel.

Es kann einige Sekunden dauern, bis über Basis-URLs für Videodownloads Bytes zurückgegeben werden.

Bevor du diesen Parameter verwendest, prüfe, ob das Feld mediaMetadata.status der Medienelemente READY ist. Andernfalls, wenn die Verarbeitung des Medienelements noch nicht abgeschlossen ist, erhältst du möglicherweise eine Fehlermeldung.

Beispiele:

base-url=dv

Im folgenden Beispiel wird gezeigt, wie du die Bytes eines Videos herunterlädst:

https://lh3.googleusercontent.com/p/AF....BsdZ=dv
w, h, c und d

Beschreibung

Verwende einen der Parameter für die Basis-URL des Bilds, um auf das Thumbnail des Videos zuzugreifen.

Standardmäßig enthalten alle Video-Thumbnails ein Overlay mit einer Wiedergabeschaltfläche. Mit dem Parameter -no können Sie dieses Overlay entfernen.

Beispiele:

Beispiele finden Sie in der Tabelle mit Basis-Image-URLs.

no

Beschreibung

Entfernen des Thumbnail-Overlays, Parameter no

Wenn du die Miniaturansicht eines Videos ohne das Overlay einer Wiedergabeschaltfläche abrufen möchtest, verbinde die Basis-URL mit dem Parameter no.

Der Parameter no muss mit mindestens einem der Parameter für die Basis-URL des Bilds verwendet werden.

Beispiele:

base-url=wmax-width-hmax-height-no

Im folgenden Beispiel ist ein Video-Thumbnail zu sehen, das genau 1.280 × 720 Pixel groß ist und kein Overlay mit einer Wiedergabeschaltfläche enthält:

https://lh3.googleusercontent.com/p/AF....VnnY=w1280-h720-no

Basis-URLs für Fotos mit Bewegtbild

Fotos mit Bewegtbild enthalten sowohl Foto- als auch Videoelemente. Sie können Parameter aus Bild-Basis-URLs oder Video-Basis-URLs für Anfragen für baseUrl-Aufnahmen mit bewegten Bildern verwenden.

Parameter
dv

Beschreibung

Wenn du das Videoelement eines Medienelements mit einer Motion-Foto-Funktion abrufen möchtest, verwende den Parameter dv, wie du es auch beim Herunterladen von Video-Basis-URLs tun würdest.

w, h, c und d

Beschreibung

Verwende das Format für Bild-Basis-URLs, um das Fotoelement eines Medienelements mit einer Bewegungsaufnahme abzurufen.