Bring CloudMade Maps to Your iPhone Application
Bring CloudMade Maps to Your iPhone Application
If you’re looking for maps to add to your iPhone application you’re in the right place.
CloudMade’s iPhone Maps Library is an open source library that gives application developers everything you need to create great navigation applications on the iPhone. You don’t need to wait any longer to add turn-by-turn navigation for vehicles, pedestrians and cyclists.
The iPhone Maps Library is part of a suite of CloudMade APIs and tools that give developers access to regularly updated crowd-sourced maps. Give your users a unique experience – take control of the look and feel of your application and create richer, more interactive experiences.
The iPhone Maps Library integrates with other CloudMade tools including Style Editor, a web based tool that gives access to a variety of professionally designed map styles, which you can customize to fit your application’s specific purpose.
The are several applications in the App Store that already use CloudMade’s maps, with many more in the pipline
Trails – Relive your greatest biking, hiking and walking
moments and share them with your friends; Trails lets
you view your activities on a choice of different
CloudMade maps.
The main features of CloudMade’s Map Library are:
- Quick development time with easy to follow examples
- Mapping framework & controls
- Custom tile serving
- Geocoding
- Routing service via vehicle, pedestrian and cycle
- Integration with iPhone Location API
WorldView Live – If the view out of your window isn’t
exotic enough WorldView Live is the app for you; This
great application lets you view live webcams from all
around the world.
CloudMade’s iPhone Maps Library provides developers with a real alternative to standard mapping on the iPhone. This, combined with the ability to let consumers bring their custom maps across with them – across desktop, mobile and web – make for a compelling end user experience.
Bring CloudMade Maps to Your iPhone ApplicationMarch 19th, 2009 - Posted by Cragg Nilson in api, clients, cloudmade, developers, events, ruby | | 9 Comments



on March 19th, 2009 at 4:01 pm
Android?
on March 30th, 2009 at 7:51 pm
I’m trying to use the iPhone api, but can’t get the basic example to work. I’ve followed the instructions and pasted in my API key, but when I launch the simulator it just shows the “loading” icon spinning around along with some basic copyright info on a gray screen.
Maybe the problem is with my api key? I tried entering bogus text for the key and I get the same result. When I registered for the key on your site I needed to enter a domain name, but obviously since I am running this on an iphone the requests are not actually coming from the domain I listed. Any suggestions? Or is there a forum where I should be posting this?
on March 30th, 2009 at 8:03 pm
Actually it is now working — Either it takes some time for the API key to be approved by CloudMade (>10 minutes) or you need to use the API key on a website at least once for it to start to work within the iphone. I’m not sure which one of those things fixed my problem, but now it’s working!
on April 4th, 2009 at 10:07 pm
can someone explain how the coverage for OSM compares to google & VE for the iphone? I want to make sure that no one will complain about coverage in the US or UK if i use for an iphone application.
I have tried google and it is slow…
on April 8th, 2009 at 9:11 pm
I have problems with the first example. I have done (i think) everything right but it isn’t working.
The problem i encounter is in the CreateMapSettings. When i try to compile, X-code tells me that i have to many arguments.
I use: BASEURL,”MY AKIKEY”,1,64,15,FALSE,51.514,-0.137,TILESERVER,SUBDOMAINS,320,480
Any clues?
on April 12th, 2009 at 6:16 pm
In doing the “locate me” example, I get the following errors:
Building target “locateMe” of project “locateMe” with configuration “Debug” — (2 errors)
cd /Users/terry-redman/locateMe
setenv MACOSX_DEPLOYMENT_TARGET 10.5
setenv PATH “/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin”
/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.0 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator2.2.1.sdk -L/Users/terry-redman/locateMe/build/Debug-iphonesimulator -F/Users/terry-redman/locateMe/build/Debug-iphonesimulator -filelist /Users/terry-redman/locateMe/build/locateMe.build/Debug-iphonesimulator/locateMe.build/Objects-normal/i386/locateMe.LinkFileList -mmacosx-version-min=10.5 -framework UIKit -framework CoreGraphics -framework Foundation -framework CoreLocation -o /Users/terry-redman/locateMe/build/Debug-iphonesimulator/locateMe.app/locateMe
Undefined symbols:
“.objc_class_name_Utils”, referenced from:
literal-pointer@__OBJC@__cls_refs@Utils in CloudMadeView.o
“.objc_class_name_PlaceMarker”, referenced from:
literal-pointer@__OBJC@__cls_refs@PlaceMarker in CloudMadeView.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
“.objc_class_name_Utils”, referenced from:
literal-pointer@__OBJC@__cls_refs@Utils in CloudMadeView.o
“.objc_class_name_PlaceMarker”, referenced from:
literal-pointer@__OBJC@__cls_refs@PlaceMarker in CloudMadeView.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
Build failed (2 errors)
Any ideas?
on April 13th, 2009 at 12:09 am
Neve mind, I figured it out, I was missing utils.h(& .m) and placeholders.h(&.m) from my classes in the Xcode project, once I moved them in, voila, it worked!
on May 27th, 2009 at 5:37 am
Android?
on July 13th, 2009 at 9:50 pm
I’m seeing the following error when trying the 1st example using the iphone 3.0 simulator. Can someone advise on how I can get this working?
_PLog”, referenced from:
-[CloudMadeMapView performJavaScript:] in CloudMadeMapView.o
-[CloudMadeMapView webViewDidFinishLoad:] in CloudMadeMapView.o
-[CloudMadeMapView webViewDidFinishLoad:] in CloudMadeMapView.o
-[CloudMadeMapView webView:didFailLoadWithError:] in CloudMadeMapView.o
-[CloudMadeMapView locationManager:didUpdateToLocation:fromLocation:] in CloudMadeMapView.o
-[CloudMadeMapView locationManager:didFailWithError:] in CloudMadeMapView.o
-[CloudMadeMapView setCenter:::] in CloudMadeMapView.o
-[CloudMadeMapView changeMapStyle:::::] in CloudMadeMapView.o
-[CloudMadeMapView getBoundBox:] in CloudMadeMapView.o
-[CloudMadeMapView getBoundBox:] in CloudMadeMapView.o
-[CloudMadeMapView transformPointToLatLng::] in CloudMadeMapView.o
-[CloudMadeMapView fillArrayOfDistances] in CloudMadeMapView.o
-[CloudMadeMapView putRouteToTheMap:] in CloudMadeMapView.o
-[CloudMadeMapView getBoundsZoomLevel:] in CloudMadeMapView.o
-[CloudMadeView touchesEnded:withEvent:] in CloudMadeView.o
-[CloudMadeView changeMarkersPositions] in CloudMadeView.o
-[CloudMadeView placeMarkersOnMap:withDelegate:] in CloudMadeView.o
-[PlaceMarker touchesEnded:withEvent:] in PlaceMarker.o
-[PlaceMarker touchesEnded:withEvent:] in PlaceMarker.o
-[PlaceMarker touchesEnded:withEvent:] in PlaceMarker.o
-[PlaceMarker setMarkerImage:] in PlaceMarker.o
+[Utils removeTokenFromURL:] in Utils.o
+[Utils getCategories:] in Utils.o