CMMapLauncher is a mini-library for iOS that makes it quick and easy to show directions in various mapping applications. To use it, just add CMMapLauncher.h
and CMMapLauncher.m
to your project.
To check whether one of the supported mapping apps is present on the user's device:
BOOL installed = [CMMapLauncher isMapAppInstalled:CMMapAppCitymapper];
Then, to launch into directions in that app:
CLLocationCoordinate2D bigBen = CLLocationCoordinate2DMake(51.500755, -0.124626);
[CMMapLauncher launchMapApp:CMMapAppCitymapper
forDirectionsTo:[CMMapPoint mapPointWithName:@"Big Ben"
coordinate:bigBen]];
Enable debug logging to log the launch URI/parameters:
[CMMapLauncher enableDebugLogging];
CMMapLauncher currently knows how to show directions in the following mapping apps:
- Apple Maps —
CMMapAppAppleMaps
- Citymapper —
CMMapAppCitymapper
- Google Maps —
CMMapAppGoogleMaps
- Navigon —
CMMapAppNavigon
- The Transit App —
CMMapAppTheTransitApp
- Waze —
CMMapAppWaze
- Yandex Navigator —
CMMapAppYandex
- Uber —
CMMapAppUber
- TomTom —
CMMapAppTomTom
- Sygic —
CMMapAppSygic
- HERE Maps —
CMMapAppHereMaps
If you know of other direction-providing apps that expose a URL scheme for launching from other apps, this project wants to incorporate them! Pull requests and issues providing URL schemes are encouraged.
CMMapLauncher was originally created by Citymapper, but is released under the MIT License for the benefit of the iOS developer community.