Hinweis: Dieser Artikel bezieht sich auf ein Android mit der Version 2.3, genauer gesagt Cyanogenmod 7.2. Für ein aktuelles Android gibt es alternative Apps. Man nimmt dann besser das kostenlose Easy DAV für ownCloud anstatt CalDAV-Sync und CardDAV-Sync.
Jetzt kommen wir also zum letzten Schritt: Das Handy auf die Synchronisation mit Owncloud umstellen und anschließend den Sync mit Google abklemmen.
Sync-Apps installieren
Für die Synchronisation benutze ich die beiden kostenpflichtigen Apps CalDAV-Sync und CardDAV-Sync. Für letztere App gibt es auch eine kostenlose Version namens CardDAV-Sync free beta, die aber folgende Felder nicht synchronisiert: "notes, instant messengers, organizations, nicknames, categories (groups), phonetic names, related names and websites"
Die URL zum Synchronisieren findet man in den Owncloud-Settings von Kontakte und Kalender. Durch die Rewrite Regeln in unserer Nginx-Config können wir den remote.php-Teil der URL auch weglassen. Die URLs sehen dann etwa so aus:
https://mein_name.selfhost.eu/caldav/calendars/<owncloud_login_name>
https://mein_name.selfhost.eu/carddav/addressbooks/<owncloud_login_name>
Vor dem ersten Sync habe ich sicherheitshalber in den Setting eingestellt "Server gewinnt" bei Konflikten, da ich die Kontakte ja schon zur Owncloud importiert hatte.
Da (zumindest auf älteren Android-Versionen) die Adressbuch-App keine Kontakte editieren kann, die per CardDav synchronisiert wurden, muss man noch Contact Editor Free installieren.
Um Einladungen, die man per E-Mail bekommt, in den Kalender zu übernehmen installiert man sich noch IcsBot. Die anderen Apps im Playstore haben bei mir nicht gut funktioniert, bei aktuelleren Android-Phones kann das aber anders aussehen.
In den Sync-Apps muss man noch einstellen, dass bidirektional synchronisiert wird. Standardmäßig war bei mir nur die Synchronisation vom Server zum Handy eingestellt. Nun kann man das Google-Konto unter "Konten & Synchronisieren" entfernen, danach sollte es in den Settings so aussehen:
Jetzt ist ein guter Zeitpunkt den Google Account komplett von seinem Handy zu löschen. Z.B. indem man ein Cyanogenmod Rom installiert. Vorher einfach mit Titanium Backup alle Apps sichern und hinterher wieder aufspielen.