I know there is an unofficial Google Voice API for Java, but I couldn't find any way to subscribe to get new call notifications. I want to make an Android app that would work like the Gmail Chat gadget that allows you to get incoming calls directly with Google Voice, not to a forwarded number. This way, if a user has a WiFi connection, they wouldn't have to use their mobile carrier's minutes and they could just get their incoming calls directly from Google Voice, instead of having them forwarded to their mobile carrier's number. Is there any way to do this? How does the Gmail Chat gadget do it? Thanks.
If you're okay with using HTTP calls under the hood, you can have a look at this page which details how it was developed for Firefox.
Also, have a look at this question for some non-android APIs that might give you an idea.