I’m not sure how DavDroid currently handles unparseable items, but it should somehow notify the user that something went wrong while parsing such items – otherwise the user could miss events, deadlines etc.
Creates vcards without N field
with the contact editor shipped with the sony xperia m and davdroid, the following vcard gets uploaded to a calypso server:
BEGIN:VCARD VERSION:3.0 UID:14d8467d-1404-4c7f-b78b-d61cb4e31ac0 FN:Test3 Suffix Only PRODID:DAVdroid/0.7.1 (ez-vcard/0.9.6) REV:20150318T161127Z END:VCARD
admittedly, the vcard was created by only filling the phonetic suffix name, but that’s likely to be a user error, and causes the server to reject it on grounds of violating the requirements of RFC 2426 (3.1.2 “N Type Definition”: The property MUST be present in the vCard object.).
please consider adding an empty N line in such cases (“N:;;;;” if i’m counting correctly) or storing contacts as vcard 4.0 (RFC 6350), where the N is optional.
The N property will now always be generated if there’s only a prefix or suffix present, too.
For contacts without any name, it doesn’t make much sense to generate N, because many servers will deny contacts with empty FN and N.
In this case the only workaround is to specify a name.