Wednesday, July 27, 2005

KMaps - Google Maps on the go on Treo 650, Where.com

[If you are looking for the latest KMaps version, go to http://www.alealea.com]

Make sure you visit Where.com, mobile photo and video sharing service.

Since I use Google Maps often and I use my Treo 650 all the time, I thought it would be nice to have some of Google Maps on my Treo. Google Maps implementation is heavy on AJAX and no Treo 650 web browser to my current knowledge is able to handle Google Maps the way they are handled in the non-handheld browsers (at least my Xiino and Blazer aren’t able to handle them).

Moreover, I don't consider Browser to be an appropriate platform for people on the go who usually need to get information in as less clicks as possible and who operate in such a dynamic environment where usability is paramount. Sure, Browser is a good User Interface option when you are sitting in the chair and operate an input device. However, people on the go need another type of platform that can compute and cache...

The value of Google Maps is not only in map or satellite images they provide but also in Google’s outstanding ability to deliver the precise search results for the less than perfect queries that we often submit. For example, it is enough for me to type “Caffe Umbra Boston” and Google will give me the exact address (including the phone number) of the place together with the several other options.

KMaps is my first take on implementing some of the Google Maps functionality on Treo 650. It is a work in progress and feedback is appreciated. KMaps uses Google Maps search results, directions and images to help me find my way around. I find it extremely useful for finding the restaurants on the go. I can simply enter “Tapas Boston” to get the list and addresses of tapas places around. Then I can get maps and directions to these places on the go. Or, I can simply submit "Franklin St & Congress St Boston" to position myself on the corner of Franklin and Congress Streets in Boston. I have used KMaps very often since I have developed it and I thought it might be valuable to other Treo 650 owners, so KMaps is posted it here for download.

Before you download, please understand that this application is not officially recognized by Google although it relies on Google technologies. Since Google doesn’t have (yet) an official Google Maps port for mobile phones, I am hoping that they won’t ask me to stop offering KMaps for download since it doesn’t compete with any of their products, but fills the current Google Maps void for mobile phones and helps spreading the buzz about the cool Google technologies around instead. KMaps development was possible only for the reason of Google making their technologies so open and easy to use and we thank Google for that.

However, if I receive any email or complaint from Google about this application, I will be obliged to remove it and disable any further downloads! I also notified Google (via email) about KMaps existence.

KMaps is distributed under the Attribution/NonCommercial/NoDerivs Creative Commons license. You may download, use and distribute the application free of charge for non-commercial purposes. You may NOT use it for any commercial purpose.

KMaps is copyright © 2005 by Ivan Mitrovic. This application is NOT officially supported by Google or affiliated with Google in any way. All map tiles and satellite imagery displayed by the application are copyright by Google, Inc. and their partners, and all searches are performed using Google Maps search features. Read Google Maps Terms of Use for more information.

Let me cover myself now...

You are downloading and using KMaps application on your own responsibility and I shall have no liability for loss of time, data, material or financial loss or any other loss caused by using KMaps application.


Installation

KMaps is Java mobile application so you need to have Java installed on your Treo 650. If you don’t have Java installed on your Treo 650, you will have to install IBM Java that is recommended by Palm.

IBM Java implementation, WebSphere Everyplace Micro Environment is available at no cost to customers who purchased a Treo 650 smartphone, a Tungsten T5 handheld or a Zire 72 handheld. Other customers with supported devices can purchase IBM WebSphere Everyplace Micro Environment at Software Connection for $5.99.

Go to http://www.palm.com/us/support/jvm/ , fill in the form, select your device and download WEME571.zip and follow the installation instructions (they are fairly simple). After Java is installed, you can download KMaps Application.

Once you downloaded Java, you may be asked for Midlet URL. Please, ignore this and exit, since KMaps is packaged as any other Palm application. Once you installed Java, simply download KMaps.prc below.

I understood all of the above and I want to download KMaps

Important>> I am sure you'll find your way around the screens with the Menu. However, once in a Map mode, there is no menu available and you have to rely on keys instead: 5 way-nav for walking the map, 5-way nav center to change the zoom level, "B" key to get Back (Exit) from the map, "H" key to return the wanderer home promptly (in case that he wandered far away) and "L" to turn on/off the distance mode between the wanderer and the starting point.

You can also send me a feedback:
Email


This application is tested and used on Treo 650 (since I have it), but I haven’t invested any time into testing in on other Palm devices. I think that you should have no issues running it on Treo 600, Tungset T3, Tungsten T5 or Tungsten C as long as you have Java installed. I have actually got update from a friend of mine, Coty Rosenblath who tried it on his Treo 600 and said that it had worked OK. However, I can’t guarantee it since I haven’t run it. I would appreciate if you send me a note on how it works in case that you try it on other Palm models.

How to use KMaps

Click on KMaps icon to start KMaps.




The first time you enter KMaps you will have to set some settings.



You can change Settings later on if needed. Select your default distance unit, miles or kilometers (some of us still have trouble adjusting to miles even after so many years in US). Set your average walking speed in unit per hour. By default this is set to 3 miles per hour. Default zoom is set to 2. Google zoom ranges from 0 to 14. “Show Latitude and Longitude”, if checked, will display Latitude and Longitude information on the map screen as you are moving through the map. You can simply accept the default settings to begin with by clicking on Save and then change them later if you need to.

Type your search term and click Go button.



KMaps will process Google Search results and let you select one of the results found by Google. The results are as they appear when search is performed on http://maps.google.com. If you can't find your location on http://maps.google.com, you won't find it when searching on KMaps either.



Navigating the Map

You will get a map of the selected address by clicking Map button. Map will be downloaded from Google.



Map will open at the default zoom that was set in your initial Settings. Depending on whether “Show Longitude and Latitude” setting was checked or not, you may see the current Latitude and Longitude information displayed.



Click on the Pin image on map any time to remind yourself on the exact address of the place.



Use 5-way navigation to move around the map. You will see a small character that is going to do a mapwalking in your stead and that you can move around using 5-way navigation.



Since this is a handheld device implementation, it makes no sense to load the whole huge Google Map at once, like we do it on Desktops or Laptops, but rather Google Map tiles are loaded as needed, on demand, to save the bandwith. If you want your wanderer to “discover” the area that is not on the map, simply walk him until he hits the wall and new map tiles will be automatically downloaded from Google, filling the area with the new map. You can then continue walking the newly discovered lands…



Hit “L” (to remember, L=Line) button on keyboard to see the walking distance from your point of origin. In addition, the time needed to walk the distance is calculated (taking in account the average walking speed you set in Settings). In this case, distance is 0.255 miles and the time needed to walk that distance is 5 minutes.



Press center button on 5-way navigation to change zoom. + for Zoom In, - Zoom Out Use 5-way navigation to focus on Zoom Gauge and then change the value using left or right 5-way navigation buttons.



If your character walked far away and you want to get back to the starting position, hit the “H” button on the keyboard (to remember, H = Home).

Hit “B” to exit the Map screen (to remember, B = Back)

Getting Google Maps Directions


Start by entering the search term (it doesn’t matter whether this is your start or end address, you can indicate that later).



Click Go button to get the exact location.



Notice “From” and “To” buttons. By clicking on “From” button, you indicate that the selected address is to be the starting point. Accordingly, by clicking on “To” button the selected address becomes an end point. Since I want to get the directions to “Caffe Umbra” from where I am standing now (252 Hannover St Boston), I hit “To” button. Enter another search term to get Google Search Results.



Click Go button to get Google Maps Search Results.



Click “From Here” button to get the directions from 252 Hannover St to Café Umbra in Boston. Scroll down to see the complete directions.



Once Directions are displayed you can click on Reverse to get the reverse directions.

You can also save directions to open them later.



You can open saved directions by selecting Open Directions from menu. For the moment, you can save only one set of directions, but I’ll add saving more of them soon.



Again, feedback on this application is appreciated and I would be curious to see if how it works on Palm devices other than Treo 650.

Cheers,
Ivan