I’m sorry, but that’s not possible with CardDAV beause it’s based on WebDAV (which is based on HTTP) and DAVdroid is a CalDAV/CardDAV sync adapter.
Basically, you could adujst the source by creating a new RemoteCollection that serves a local directory - if you’re experienced in programming, it might not be that hard.
Hurray! I eventually found my contacts. Not very intuitively I had to open “Contacts”, select “Settings” and “Filter” to get to a screen where the contact providers (SIM, Google, DAVdroid, etc.) can be enabled:
Do you think that it is possible to enabled DAVdroid contacts when adding a DAVdroid account? That would be much easier for newbies like me.
Thanks and sorry for bothering you.
I know they are different protocols, but presumably, one app is not fundamentally restricted to one, is it?
I think such an app should not be called DAVdroid because that would confuse users (like me before I investigated the differences).
I have an idea what the reason could be: findNew() creates remote file name and UID when a record is synced the first time. When this first sync where findNew() returns the new items suceeds, everything is OK.
However, when the sync does not succeed, maybe the contacts data provider takes the records as “updated” (because of the generated UID and remote file name fields) instead of “new”. This would explain why the resource is uploaded as “updated” record instead of a “new” record, causing the upload to fail (because on the remote server, the record doesn’t exist yet, so the update fails).
arf! I was checked twice. Thank you for you help.
I used https://sslcheck.casecurity.org/ to verify my certificate chain. The site is based on ssllabs but have a better display than ssllabs. I was an issue with the StartSSL CA certificate.
As the other applications (owncloud, “CardDav-Sync free” and “CalDav Sync Adapter”) are able to behave like web browser, it’s not so easy to investigate the problem.
Could you update the FAQ http://davdroid.bitfire.at/faq/entry/cannot-verify-hostname in order to add one bullet per issue that we have to verify and for each point specify some guide lines? For example, how we can use the SSL testing service to check the certificat supply chain (or openssl command line).
Is it possible that DAVdroid returns a better error message? (‘certificat supply chain error’, ‘self-signed certificate not allowed’, etc…)
Anyway, thank you very much for your support.
Now, DAVdroid is able to connect my owncloud server
Did you try to delete all data of the calendars app and storage (in the Settings/Apps activity)? But be careful, it will delete all your calendar data.
I’ll close this issue for now because I don’t think it’s a DAVdroid problem. If you find out anything new, please feel free to post here again nevertheless.
Cancelled for now because DAVdroid and especially its libraries rely heavily on reflection; removing “unused” methods will cause errors. Renaming/obfuscation is not needed, so there’s no need for ProGuard at all. Optimization should happen by removing dependencies.
No. All contacts and events are deleted by Android when the respective account doesn’t exist anymore. If you delete an account, export the data before.
It might be possible to set the “owner account” of the contacts/events to null instead of at.bitfire.davdroid directly, but I don’t know if this will even work and can’t recommend to do so as it would be non-standard usage with undefined results.
I have implemented layered SSL/TLS connections, but unfortunately, the benefits of TlsSniConnectionFactory, namely support for SNI and TLSv1.2 on Android <= 4.4 is not available for HTTP-proxied SSL/TLS connections at the moment.
Implementing this would require to use SSLCertificateSocketFactory.getInsecure() and custom certification management.