Getting Started Adding a Map Adding a Pin to your Map
Chapter 2: Getting the user's location
Understanding CoreLocation Privacy and Location Permissions Using the Core Location Location Manager (CLLManager)
Chapter 3: Displaying points of interest on a MapKit map
Displaying multiple pins on a MapKit map Customizing the appearance of those pins Displaying annotations for pins Customizing the annotations
Chapter 4: Searching for Points of Interest with MapKit
Getting started with MKLocalSearchRequest Providing search inside your app for points of interest Limiting that search to the region displayed on the map Displaying the points of interest on a map
Chapter 5: Providing Route Directions from MapKit
Introduction to Apple's routing Building a walking tour app Sending a routing request to the API Displaying directions in a list within the Apps
Chapter 6: Working with Geofences in CoreLocation
Setting up geofences Listening for geofence triggers Displaying a local notification inside the app Removing geofences from the app
Chapter 7: Getting Started with Google Maps SDK for iOS
Introduction to Google Maps on iOS Differences between Google Maps for the Web and iOS Setting up Google Maps for iOS Displaying a Google map in the app Displaying a pin and a callout in the app Changing the layers used by the map
Chapter 8: Using Google Places with iOS
Requirements for using Google Places in your app Getting started with the Google Places API Providing search inside your app for Google Places Displaying Google Places locations on a map
Chapter 9: Using Directions with the Google Directions API
Introduction to the Google Directions API Building a package delivery app Using the Google Directions API
Chapter 10: Getting Started with Mapbox for iOS
Signing up with Mapbox Installing the Mapbox library Displaying a basic map Adding an annotation to the map Displaying different map layers
Chapter 11: Customizing Map Styles with Mapbox
Introduction to customization Customizing map colors Turning off features for a simpler map Collaborating with designers on Mapbox maps
Chapter 12: Turn by Turn Navigation with Mapbox
Introduction to Mapbox Navigation API Building a rideshare app Using the Mapbox Navigation API
Chapter 13: Using Offline Maps with Mapbox
Introduction to offline mapping Downloading map tiles from Mapbox Using offline map tiles in your map Considerations for offline tile management
Jeff Linwood is an experienced author who has worked on many iOS and Android apps that use maps or location functionality. He's also taught and mentored college student application teams as they develop their first apps. In teaching, he noticed a lack of good sample applications and tutorials for map and location applications. He'd like to create the definitive book for developers creating these types of apps.
Work with Apple Maps, Google Maps, and Mapbox in iOS with Swift programming. Guided by practical examples, this book covers all three map frameworks to ensure you properly select which one best suits your iOS app's needs in working with iOS location.
You'll see how Apple's privacy settings apply to a user's location, and how to access that user's location from an application. Once you have access to the user's location, allow your app to display points of interest from Apple's database on the map inside the app, as well as to provide a search through that database by name.
You can also incorporate turn by turn directions inside your own app to provide routes. Or trigger different functionality or notifications based on locational queues. With Build Location Apps on iOS with Swift, you'll even find out how to provide offline map support for hiking, camping, or other outdoors applications where cell phone service is weak.
You will:
Display points of interest within your own app
Work with Apple's privacy settings so pertinent information comes through
Trigger functionality based on geographic prompts
Create your own custom map styles with Mapbox Studio and display them in the app