CalDAV Clients/Calendar Sync for Android

From Davical
< CalDAV Clients
Revision as of 02:50, 22 March 2010 by Karora (talk) (Using Self-signed SSL Certificates)
Jump to navigationJump to search

From March 2010 a CalDAV solution for Android has appeared in the Android App store. Find it on a search for 'caldav'. The company has a page at is with some more information.


Calendar Sync for Android will synchronise the calendar on your phone with a remote CalDAV server, including a DAViCal server.


This is a calendar synchronisation program, and as such it needs to be given a calendar URL, which in DAViCal's case will be something of the form:

Where 'calendar' is generally 'home', by default, on DAViCal.

Using Self-signed SSL Certificates

If you use a self-signed SSL certificate on the Android the process of making it work is somewhat convoluted...

According to Brendan Whelan from Hypermatix, the following steps are needed:

  1. First, you need to create a keystore containing the cert of your Certification Authority (albeit your own server).
    • Bob Lee has an excellent blog post on how to do this. Just follow his steps one and two from
    • Essentially this involves getting old of the root certificate. I use the root authority myself, and their root is downloadable from their website, but you need to follow part of the above process to convert it to a .bks file.
  2. Rename your file to "CA.bks".
  3. Create a new directory on your phone's SD card at /CalDAVSync/CA/ and drop the CA.bks in there.
  4. Then in CalendarSync, Advanced connection settings, check to enable using the keystore and enter the password you chose for the keystore.

Do a sync and it should work!

One caveat though: the app can't read the keystore while your phone is connected to a PC and in USB hard drive mode, so you'll need disable USB drive mode before sync will work without error.


  • It seems to synchronise my calendar into the local calendar app, just fine, but I don't see it synchronising changes I enter into the Android calendar back into DAViCal.
  • After each synchronisation attempt it reports "Last Synchronized: Never" and "Synchronisation status: java.lang.nullPointException" - maybe this is related to the above!