I was recently referred to this little project were it appears that the Google “MyLocation” API, the one that is used by Google’s Mobile Maps to pinpoint your location even without GPS, has been reverse engineered. The site has the title Google Maps for Mobile revealed and the site’s author has a little snippet that hints at a little riff between he and GOOG:
that probably will end quite fast. What did happen on February, 29th 2008 – a day, which normally doesn’t appear 🙂
The Google Maps for Mobile forum has changed the last days (http://groups.google.com/group/Google-Maps-for-mobile). Whereas it has been an open discussion platform over the past month I unfortunately had to notice, that there has been some sort of censorship applied. In fact, most of my postings, dealing with internals and unpublished features of the GMM API have been deleted from the forum. For that reason I will no longer participate in this forum. One may find some debris of my postings, if searching for neil.young using the group’s search function (as long as Google hasn’t finished the operation “clean sweep”).
I also found the following post on Google Groups asking people to refrain from posting about reverse engineering:
please refrain from posting reverse engineered code or threads asking
for how to hook into the back end of Google Maps for mobile! This is a
violation of the Google Maps for mobile terms of service and we’ll
have to delete those threads and posts.
In terms of the reverse engineering work itself, it is described on the following page: http://maps.alphadex.de/index.php?section=mylocation that includes a simple reference implementation in C#. I did a simple port of this code to basic command-line pure C code that can be found here
Disclaimer: The folks at http://maps.alphadex.de/ did the work here. I just ported their code. As they say on that site, this was performed in order to understand the inner workings of the API with no commercial intention behind it. It should be mentioned, that the use of the provided information out of the scope of learning and education may violate Google’s terms and conditions.