Infinite Loop
February 2011

Reverse Geocoding without Google’s Restrictions

Since iOS 3.0 it has been very easy for iPhone App developers to provide users with detailed information about their current location by using the built-in MKReverseGeocoder class. The MKReverseGeocoder class acts as an Objective C wrapper around Googles geocoding services and handles all the network activities as well as decoding of the returned result.

This all sounds very nice, except that you are only allowed to use the MKReverseGeocoder class if you also display the result in conjunction with a Google map. This may be perfectly fine for most Apps needing reverse geocoding but will effectively prevent other types of Apps from using this service. MyAlmanac is one of those Apps that fall into the latter category.

GeoNames Geocoding Services

Fortunately GeoNames provides an alternative to Google and with much less restrictive license terms. Basically all they require is that you give proper credit to them.

(more…)

Bookmark and Share
Comments (2) | Trackback

Testing Location Based iPhone Apps

One of the challenges that iPhone App developers are often faced with is how to properly test location based Apps. The iPhone simulator only provides you with the location of Apple’s headquarters in Cupertino, or alternatively the location of your own development computer. If your App’s content is based on the current location of the user, then it’s very difficult to get anywhere close to some real-world tests without having to travel around with your iPhone. Unless the content is only based in your own neighborhood it will quickly become both very time consuming and costly.

I was recently faced with the same dilemma during development of a new (still undisclosed) App until I discovered this little gem: FTLocationSimulator from FutureTap. It’s a small class that replaces some of the functionality of CLLocationManager. Instead of feeding your code the actually location of the user, it instead grabs fake locations from a KML file generated using Google Earth.

(more…)

Bookmark and Share
Comments (9) | Trackback