Mit Androids Kontakte-App exportierte Kontakte in Nextcloud & ownCloud nicht importierbar
Posted on Monday, 09 January 2017 in Android
Die standardmäßig unter Android installierte Kontakte-App erlaubt den einfachen Export sowie Import aller oder ausgewählter Kontakte im Adressbuch. Das dazu verwendete Format ist vCard, erkennbar an der meist verwendeten Dateiendung *.vcf, was für vCard file steht. Will man diese vCard-Datei in seiner Nextcloud oder auch ownCloud importieren, erhält man lediglich Fehler für jeden Kontakt, dass dieser nicht erstellt werden kann. Ein Blick in den Fehler-Log in dem Administrationsbereich der Cloud-Instanz offenbart das Problem:
Sabre\DAV\Exception\UnsupportedMediaType: HTTP/1.1 415 Validation error in vCard: CardDAV servers are not allowed to accept vCard 2.1.
Nextcloud sowie ownCloud verwenden für die Umsetzung von CardDAV, der Schnittstelle zum Austausch von Kontaktdaten, die freie Serverimplementierung sabre/dav. Diese setzt als Mindestversion für vCard die Version 3 voraus:
Every compliant CardDAV client or Server must support vCard 3.0 (rfc2425 and rfc2426). vCard 2.1 is way too old and should always be rejected.
Die unter Android verwendete Version ist 2.1, welche somit als "viel zu alt" bezeichnet und von sabre/dav abgelehnt wird, was zu den Fehlern beim Erstellen der Kontakte führt.
Abhilfe verschafft die App Export Contacts (Google Play-Link), welche die Kontakte in eine vCard-Datei der Version 3.0 exportieren kann. Die so erstellte vcf-Datei kann problemlos in der Cloud der Wahl importiert werden.