Mimicking Google Account on the server-side
I recently bought an Android device. Now I'm wondering if can I mimic protocols it uses to communicate with Google servers? I basically want to setup some kind of "Google account", which wouldn't be served by Google, but would be fully compatible with Android devices. So, does Android use some kind of WebDAV protocol for accessing things like calendar, contacts? What kind of protocol does it use for mail (is it IMAP, as I would configure my account on a PC or some other Google-only-knows-what-is-it protocol?) Or do I just have to mimic GData protocols? Is there even a way to change host which Android talks to?
I know that there are things like Google Apps. They allow you to setup your own, very little part of Google, which AFAIK can be connected to Android device (you just have to create an Google account with your domain after username, I suppose), but everything's still hosted on Google servers and Android still talks to Google host.
If nothing works out, I could probably create some kind of service 开发者_开发问答provider, which would act like those for Facebook, Twitter and Google, but for now I want to explore possibility of doing it on the server-side.
Not that I don't trust Google. I just don't really like someone handling valuable part of my life in files I don't own. Assume this question void if someone found a way of chown
ing files on Google servers ;).
No, you can not "redirect" google apps on Android to talk to your servers.
Google exposes their Apps (gmail, calendar, docs, etc..) via various APIs (GDATA), so I suppose their Android apps use those.
Even if you "mimic" those protocols, you could not redirect the apps, because AFAIK they use SSL.
Just create your own client and server software, secure the connection via SSL and you are all set. You even don't have to write the software as there are thousands open-source server apps for email, calendaring, doc sharing, etc..
If you are thinking of using Google clients without their servers and proposing a roll-your-own replacement, than you clearly do not understand the complexity of developing such a service. Do you realize there are thousands of top-notch devs working daily on this?
If you dont trust application service providers (Google, Facebook, etc..) than don't use their services. Same goes for other service providers like credit card companies, banks, mobile, telco, etc..
If you have a rooted phone it could be quite cool to mimic google server. For example by changing the calendar https url in the sqlite database to your own server. For calendar, I guess this is Caldav, but should be written down somewhere officially.
And yes, their are caldav-sync tools for Android, but they all suck completely (Hypermatic sucks less, but it has been abandoned, and is not open source)
精彩评论