Wie synchronisiere ich Google Mail-Kalender in davdroid 1.10.1.-gplay mit caldav in Android 6.0.1?

Ich versuche, meine Kalender mit caldav in davdroid zu synchronisieren, indem ich die folgenden Kontoanmeldeinformationen verwende:

"Login mit URL und Benutzername"

Wo die URL auf dieser Google Caldav-API-Anleitung zur Verwendung von Caldav für Apple und/oder Thunderbird basiert:

https://apidata.googleusercontent.com/caldav/v2/calid/user https://apidata.googleusercontent.com/caldav/v2/calid/events

Wobei calid entweder durch meine Google-Kalender-ID in Form ersetzt wird:

<26-character long calender id>

oder

<26-character long calender id>@group.calendar.google.com

Wie in den Google-Kalendereinstellungen gefunden in:

https://calendar.google.com/calendar/r/settings/calendar/

Ich habe versucht, die 4 Kombinationen in davdroid einzugeben, und das Besondere ist, dass es für 1 Kalender funktioniert, für den ich als Besitzer im Link https://calendar.google.com/calendar/r/settings/calendar/ dafür aufgeführt bin Kalender, aber es zeigt nicht die Kalender in Davdroid für Kalender an, für die Google Kalender sagt, dass es "abonniert" ist.

Also dachte ich, es könnte ein Berechtigungsproblem sein. Also habe ich einen neuen Testkalender gemacht, um zu prüfen, ob das wirklich so ist. Ich habe für diesen Kalender sichergestellt, dass ich als "Eigentümer" aufgeführt bin. Kalender mit den obigen 4 Optionen hinzugefügt, aber der Kalender wurde wieder nicht angezeigt.

Nach einem erneuten Besuch des Testkalenders ist mir aufgefallen, dass auch dieser als Abonnement hinzugefügt wurde, wo ich nicht als aufgeführt bin

email@gmail.com (Inhaber)

Aber:

email@gmail.com mit einem ausgegrauten Dropdown-Feld mit „Änderungen vornehmen und Freigabe verwalten“ daneben.

Das Synchronisieren des Kalenders, dessen Besitzer ich bin, hat bereits funktioniert, bevor ich die Google Caldav-API aktiviert habe, aber nur um sicherzugehen, habe ich die Google Caldav-API aktiviert. Es hat das Ergebnis meiner bisherigen Versuche nicht beeinflusst.

Der erste Schritt zu diesem Problem ist also, denke ich, wie man einen Kalender erstellt, der mich als Eigentümer auflistet, auch nach der Erstellung.

Aber die Hauptfrage ist ein verallgemeinertes Verfahren zur Beschreibung einer Möglichkeit, davdroid einen Kalender für eine 2-Wege-Synchronisierung hinzuzufügen, für den mein Google-Konto abonniert ist (z. B. ein Kalender, der von einem anderen Google Mail-Konto mit mir geteilt wird).

Wenn Sie wissen, wie man entweder den Teilschritt oder das verallgemeinerte Verfahren durchführt, oder einen Fehler in meinem Versuch/Ansatz entdecken, lassen Sie es mich bitte wissen, damit ich mich anpassen kann.

Antworten (2)

Die aktuelle Google API / OAuth-Methode wird von DAVdroid nicht unterstützt, ist aber weiterhin möglich, indem das veraltete Format verwendet wird:

https://www.google.com/calendar/dav/[yourname]@gmail.com/events Nutzername Passwort

Allerdings erfordert es den Kompromiss Weniger sichere Apps zulassen: EIN in den Google-Sicherheitseinstellungen.

Delegaten werden jedoch nicht synchronisiert.

Getestet auf OnePlus 3t, Android 7.1.1, DAVdroid 1.10.1.1.

Die Lösung ist die Auswahl

"Login mit URL und Benutzername"

Option in Davdroid.

Fügen Sie dann die vollständige Kalenderoption wie in der zweiten Option der Kalender-ID angegeben in die "Basis-URL" ein:

<26 digit calendar id>@group.calendar.google.com

(Für importierte Kalender wird daraus: <32 digit calendar id>@IMPORT.calendar.google.com)

Hinein:

https://www.google.com/calendar/dav/<emailaddress>/events

am <emailadress>Teil. Nachgeben:

https://www.google.com/calendar/dav/<26 digit calender id>@group.calendar.google.com/events

(Für importierte Kalender wird daraus: https://www.google.com/calendar/dav/<32 digit calender id>@IMPORT.calendar.google.com/events)

Und ausfüllen <youremail>@gmail.comund <yourpassword>.

Anmerkungen:

  1. Wenn Sie auf Davdroid auf Login klicken, gelangen Sie zu einem Bildschirm, auf dem Ihr Benutzername angezeigt wird, aber dort sollten Sie stattdessen den Namen des Kalenders eingeben.
  2. Der einzige Kalender, für den dies nicht funktioniert, ist der geerbte/nicht entfernbare Kalender, der an Ihr Gmail-Konto angehängt ist.

Ich hoffe, es hilft allen, die kein vollständiges Google Mail-Konto in ihrem Android-Telefon haben möchten, das auf alle Ihre Telefondaten zugreift, aber dennoch ihre Kalender-App 2 synchronisieren möchten.

Fazit: Also der erste Teil, über den Besitz des Kalenders, ist nicht relevant. Es funktioniert sogar mit freigegebenen Kalendern.

Hinweis: Wenn Sie das falsche Passwort eingeben, wird nicht „ungültige Anmeldeinformationen“ angezeigt, sondern einfach:

Kein Caldav-Dienst gefunden

BEARBEITEN:

Hier ist eine Excel-Datei, die den Prozess des Abrufens dieser Kalender-Basis-URLs und deren Eingabe in Davdroid halbautomatisiert, da dies bei mehr als 15 verschiedenen Kalendern ziemlich zeitaufwändig sein kann.

https://github.com/at-0/PublicCodeLibrary/tree/master/VBA/Google%20Davdroid%20calendar%20app%20sync