Say Sayonara to Google Contacts Sync – Introducing OwnCloud
Welcome to Part 2 of our Say Sayonara to Google series, raising awareness of the options for using Android without Google services. Today, we look at alternative “cloud” services that are Open Source and can be installed on your own server. While there are no doubt many of these available, one that has gained significant attention recently is OwnCloud. OwnCloud is developed totally in the open (you can even clone and run directly from their Github repositories if you so desire, though this is obviously not recommended for running on a production system), in contrast to the “pseudo-open” development carried out on AOSP by Google.
What is OwnCloud About?
OwnCloud aims to offer an extendable online storage system including synchronization, to allow for contacts, calendars, files and bookmarks to be synchronized across multiple devices while retaining control of your data in the process. When using OwnCloud, all of your data is stored on a system within your control, with an Open Source backend (as opposed to a closed system such as Google).
How can I get Started?
You can set up and run your own OwnCloud instance for free on your own existing server by following the instructions from the OwnCloud website. It is strongly advisable to use an SSL certificate with this though, which may come at a small cost. Additionally, if you trust the third parties, there are a handful of providers offering free OwnCloud installations. Obviously in light of the fact that if you’re doing this, you likely don’t “trust” Google with your data. Thus, I’d suggest you consider these services merely for testing.
OK, so Contact Sync?
Yep. Unfortunately though, CardDav isn’t natively supported in Android. It might be supported in your third party variant of Android. (I’m sure I remember seeing this in an older version of TouchWiz.) It’s most likely that you’ll need to use a third party alternative client to sync your contacts. To get this application (which is free), you’ll need to use the Play Store unfortunately, as the developer has only published the free version there. The free Beta version is available here, although the developer has stated he will Open Source the application when he has the application ready for 1.0 release and the code has been tidied up.
Presuming you have set up OwnCloud (which is fairly straightforward if you have your own server etc, and which I believe to be outwith the scope of this article, unless enough readers want a guide), you can configure the CardDav sync client fairly simply by installing the above linked application, and entering the URL of your OwnCloud server (hopefully you are using SSL!), followed by “remote.php/carddav/” (see the developer’s wiki for more details of syncing with OwnCloud).
Once this is done, you can configure syncing. I suggest you disable the “one-way only” sync option, although be aware of the risks of doing this (i.e. if something goes wrong on your phone, it could overwrite server contacts). Presuming you have a backup strategy in place (which you should already have), you should be fine. By enabling two-way contact sync, you should have full contact syncing, like with Google’s own contacts sync service.
Unfortunately, it appears HTC are being deliberately obstructive on using third party contact syncing, so you may have issues on the HTC One using Sense UI. Let us know if you do manage to get it working though. Apparently the bug is a “feature…” Good one, HTC. One more reason to avoid the One (pun intended).
Your phone should upload all your existing contacts to your CardDav server at this point. Alternatively, if you are setting up your phone from scratch (recommended) to purge Google from it, you could export your Google contacts as a VCF file and import them into OwnCloud’s web interface.
At this point, it’s worth ensuring that you are no longer syncing contacts with Google by going to the Accounts and Sync menu and disabling contact sync for your Google accounts. If you wish to erase your contacts from Google, head over to Gmail in your browser and delete the contacts from the web interface.
Congratulations, you are now syncing your contacts between devices, only using your own server. We unfortunately have to use one non-Open Source application at present. However, hopefully once Marten Gajda completes his application, it will be open-sourced, offering Android users a way to sync their contacts using entirely open software and server systems.
Want something on the XDA Portal? Send us a tip!