The ideal is to have your own CalDAV server. Radicale and SabreDAV are great. Just choose one and set it up in a few minutes.
Then on your phone, install DavX5 which is an android app to sync with CalDAV/CardDAV. Your local calendar app will be able to read from that.
Then for desktop, Thunderbird is a nice client that connects to CalDAV.
And that's pretty much it. That way you will have your own calendar and contacts (and files), on your own server.
This sounds a little tricky for someone that just uses an iPhone? Although with all the fuss lately with apple I’m tempted to make the jump over
reply