Sitzungen bilden das Herzstück der Picker API. Sie bieten eine sichere und kontrollierte Nutzer können Fotos und Alben aus ihrer Google Fotos-Galerie auswählen. Dieses beschreibt, wie Sie Befragungen erstellen, verwalten und effektiv durchführen, um nahtlose Fotoauswahl in der App.
Vorbereitung
- App konfigurieren:Aktivieren Sie die API und richten Sie die Authentifizierung ein. Eine detaillierte Anleitung finden Sie unter App konfigurieren.
- Ablauf:Lesen Sie den Artikel Erste Schritte mit der Picker API. finden Sie einen Überblick über die gesamte Fotoauswahl.
- Erforderliche Autorisierungsbereiche überprüfen: Für die Arbeit mit Sitzungen benötigen Sie
photospicker.mediaitems.readonly
Bereich. Weitere Informationen zu Bereichen finden Sie unter Autorisierungsbereiche.
Sitzungslebenszyklus
Die Picker API bietet Methoden zum Erstellen, Abrufen von Informationen und Sitzungen löschen. Nach der Authentifizierung Ihrer Nutzer können Sie Sitzungen zum Verwalten Lebenszyklus der Fotoauswahl.
- Erstellen Sie eine Sitzung, damit Nutzer Medien auswählen können.
- Rufen Sie die Sitzung ab, um zu prüfen, wann der Nutzer die Medieninhalte ausgewählt haben.
- Medienelemente auflisten und abrufen
- Bereinigen Sie die Sitzung, indem Sie sie löschen.
Sitzungen erstellen
Erstellen Sie eine Sitzung, damit Ihre Nutzer sicher Fotos direkt aus ihren Google Fotos App und teilen Sie sie in Ihrer App.
sessions.create
generiert eine neue Sitzung und gibt eine eindeutige pickerUri
zurück, die
die Sie Ihren Nutzenden präsentieren können. Die Sitzung bleibt so lange aktiv, bis entweder der Nutzer
die Mediaelemente ausgewählt wurden oder das Zeitlimit für die Sitzung überschritten wird.
Sitzungen
Beachten Sie die Sitzungsbeschränkungen. Die Picker API erzwingt Beschränkungen für die Anzahl der die Sie erstellen können, um eine verantwortungsvolle Nutzung sicherzustellen und Missbrauch zu verhindern. Weniger als Normalerweise erreichen Sie diese Limits wahrscheinlich nicht. Sie sollten jedoch Sitzungen proaktiv verfolgen und bereinigen, um solche zu vermeiden Probleme.
Sitzungen abfragen und überwachen
Nachdem eine Sitzung erstellt wurde, solltest du den sessions.get
-Endpunkt regelmäßig abfragen, um den Status einer Sitzung abzurufen. Das Attribut mediaItemsSet
in der Antwort gibt
true
, wenn der Nutzer seine Auswahl abgeschlossen hat.
Verwenden Sie effiziente Abfragen. Die sessions.get
-Antwort enthält den
pollingConfig
-Objekt. Verwenden Sie die folgenden Felder, um unnötige
Anrufe und eine reibungslose User Experience:
pollInterval
: optimale AbfrageintervalletimeoutIn
: Zeitlimit
Weitere Informationen finden Sie im Beispiel für einen Abfrageablauf.
Sitzungen löschen und bereinigen
sessions.delete
entfernt eine Sitzung, die normalerweise zum Bereinigen nach dem Nutzer verwendet wird
die Medienauswahl beendet hat oder eine Zeitüberschreitung auftritt.
Als Best Practice wird empfohlen, Sitzungen zu löschen, nachdem der Nutzer Medienelemente ausgewählt hat. und Ihre App hat das Medienelement abgerufen. Bytes hinzu.
Beispiel für den Abfrageablauf
Dies ist ein Beispiel für das Erstellen und Abfragen einer Sitzung. Nach der ersten Authentifizierung erstellen Sie eine neue Sitzung.
- Sitzung erstellen: Rufen Sie
sessions.create
auf, um eine neue Sitzung zu starten undpickerUri
abrufen. - Dem Nutzer
pickerUri
präsentieren:URL anzeigen oder QR-Code generieren Code, den der Nutzer scannen muss. - Sitzung abfragen:
- Verwenden Sie das empfohlene „polInterval“ von
pollingConfig
. - Prüfen Sie, ob
mediaItemsSet
„true“ ist.- Wenn
true
angezeigt wird, fahren Sie mit der Auflistung der ausgewählten Medienelemente fort. - Wenn
false
, abfragen Sie weiter, bistimeoutIn
erreicht ist.
- Wenn
- Behandeln Sie Zeitüberschreitungen und Kündigungen ordnungsgemäß.
- Verwenden Sie das empfohlene „polInterval“ von
GET https://photoslibrary.googleapis.com/v1/sessions/{sessionId}
Sie sehen hier ein Beispiel:
{
"id": string,
"pickerUri": string,
"pollingConfig": {
object (PollingConfig)
},
"mediaItemsSet": boolean
}
Zeigen Sie dem Nutzer die pickerUri
und beginnen Sie dann mit der Abfrage der Sitzung.
Überprüfen Sie die Antwort auf Folgendes:
mediaItemsSet
: „true“, wenn der Nutzer die Auswahl der Medien abgeschlossen hatpollingConfig.pollInterval
: empfohlene Wartezeit vor der nächsten UmfragepollingConfig.timeoutIn
: Gesamtzeit, die gewartet werden muss, bevor die Zeitüberschreitung eintritt
Wenn mediaItemsSet
„false“ ist und timeoutIn
nicht erreicht wurde, warten Sie auf
pollInterval
und wiederholen Sie dann den Aufruf.
Wenn mediaItemsSet
„true“ ist, werden die ausgewählten Medienelemente aufgelistet.
Wenn timeoutIn
erreicht ist, behandeln Sie das Zeitlimit ordnungsgemäß.