Für die meisten Anwendungsfälle ist es wichtig, dass Ihr Client mit Gmail synchronisiert ist. Es gibt zwei Synchronisierungsszenarien: vollständige und teilweise Synchronisierung. Eine vollständige Synchronisierung ist erforderlich, wenn Ihr Client zum ersten Mal eine Verbindung zu Gmail herstellt, und in einigen anderen seltenen Fällen. Wenn Ihr Client vor Kurzem synchronisiert wurde, ist die teilweise Synchronisierung eine weniger ressourcenintensive Alternative zur vollständigen Synchronisierung. Sie können auch Push-Benachrichtigungen verwenden, um eine teilweise Synchronisierung in Echtzeit und nur bei Bedarf auszulösen und so unnötige Abfragen zu vermeiden.
Inhalt
Vollständige Synchronisierung
Wenn Ihre Anwendung zum ersten Mal eine Verbindung zu Gmail herstellt oder die teilweise Synchronisierung nicht verfügbar ist, müssen Sie eine vollständige Synchronisierung durchführen. Bei einer vollständigen Synchronisierung sollte Ihre Anwendung so viele der neuesten Nachrichten oder Threads abrufen und speichern, wie für Ihren Zweck erforderlich sind. Wenn Ihre Anwendung beispielsweise eine Liste der letzten Nachrichten anzeigt, sollten Sie genügend Nachrichten abrufen und im Cache speichern, damit eine responsive Benutzeroberfläche verfügbar ist, wenn der Nutzer über die ersten angezeigten Nachrichten hinausscrollt. So führen Sie eine vollständige Synchronisierung aus:
- Rufen Sie
messages.list
auf, um die erste Seite mit Nachrichten-IDs abzurufen. - Erstellen Sie für jede der von der Listenanfrage zurückgegebenen Nachrichten eine Batchanfrage mit
messages.get
-Anfragen. Wenn Ihre Anwendung Nachrichteninhalte anzeigt, sollten Sie beim ersten Abrufen einer Nachrichtformat=FULL
oderformat=RAW
verwenden und die Ergebnisse im Cache speichern, um zusätzliche Abrufvorgänge zu vermeiden. Wenn Sie eine zuvor im Cache gespeicherte Nachricht abrufen, sollten Sieformat=MINIMAL
verwenden, um die Größe der Antwort zu reduzieren, da sich nurlabelIds
ändern kann. - Fügen Sie die Updates in die im Cache gespeicherten Ergebnisse ein. Ihre Anwendung sollte die
historyId
der neuesten Nachricht (die erste Nachricht in derlist
-Antwort) für eine zukünftige teilweise Synchronisierung speichern.
Teilsynchronisierung
Wenn Ihre Anwendung vor Kurzem synchronisiert wurde, können Sie mit der Methode history.list
eine teilweise Synchronisierung durchführen, um alle Verlaufsdaten zurückzugeben, die jünger als das in Ihrer Anfrage angegebene startHistoryId
sind. Verlaufseinträge enthalten die Nachrichten-IDs und die Art der Änderung für jede Nachricht, z. B. ob eine Nachricht seit dem startHistoryId
hinzugefügt, gelöscht oder Labels geändert wurden. Sie können die historyId
der neuesten Nachricht aus einer vollständigen oder teilweisen Synchronisierung abrufen und speichern, um sie als startHistoryId
für zukünftige Teilsynchronisierungsvorgänge anzugeben.
Beschränkungen
Verlaufsdaten sind in der Regel mindestens eine Woche und oft auch länger verfügbar. Der Zeitraum, für den Daten verfügbar sind, kann jedoch deutlich kürzer sein und in seltenen Fällen sind Daten möglicherweise nicht verfügbar. Wenn der vom Client angegebene startHistoryId
außerhalb des verfügbaren Bereichs der Verlaufsdaten liegt, gibt die API eine HTTP 404
-Fehlerantwort zurück. In diesem Fall muss Ihr Kunde eine vollständige Synchronisierung ausführen, wie im vorherigen Abschnitt beschrieben.