🗺️

MapKit

iOS 3+

Apple's framework for embedding maps and location-based features in your app. MapKit provides an interface for displaying maps, adding annotations, overlays, and routing directions.

Location
Official Apple Documentation →
iOS Version Compatibility
99.8%
coverage

of iOS users worldwide can use MapKit (iOS 3+ required)

iOS VersionMarket ShareStatus
iOS 18.730.3%Supported
iOS 18.629.8%Supported
iOS 26.110.7%Supported
iOS 18.56.0%Supported
iOS 16.72.3%Supported
iOS 26.22.0%Supported
iOS 18.31.8%Supported
iOS 15.81.8%Supported
iOS 11.01.7%Supported
iOS 17.61.7%Supported

Key Features

Interactive map display

Custom annotations and overlays

Route planning and directions

Search for places and points of interest

3D and satellite imagery

Integration with Core Location

Code Examples

Display a Map

Show a basic map view centered on a location

import MapKit
import SwiftUI

struct MapView: View {
    @State private var region = MKCoordinateRegion(
        center: CLLocationCoordinate2D(latitude: 37.7749, longitude: -122.4194),
        span: MKCoordinateSpan(latitudeDelta: 0.05, longitudeDelta: 0.05)
    )
    
    var body: some View {
        Map(coordinateRegion: $region)
            .edgesIgnoringSafeArea(.all)
    }
}

Add Annotations

Place markers on the map

import MapKit
import SwiftUI

struct Location: Identifiable {
    let id = UUID()
    let name: String
    let coordinate: CLLocationCoordinate2D
}

struct AnnotatedMapView: View {
    @State private var region = MKCoordinateRegion(
        center: CLLocationCoordinate2D(latitude: 37.7749, longitude: -122.4194),
        span: MKCoordinateSpan(latitudeDelta: 0.1, longitudeDelta: 0.1)
    )
    
    let locations = [
        Location(name: "Golden Gate Bridge", coordinate: CLLocationCoordinate2D(latitude: 37.8199, longitude: -122.4783)),
        Location(name: "Alcatraz Island", coordinate: CLLocationCoordinate2D(latitude: 37.8267, longitude: -122.4233))
    ]
    
    var body: some View {
        Map(coordinateRegion: $region, annotationItems: locations) { location in
            MapMarker(coordinate: location.coordinate, tint: .red)
        }
    }
}

Frequently Asked Questions

What is MapKit?

Apple's framework for embedding maps and location-based features in your app. MapKit provides an interface for displaying maps, adding annotations, overlays, and routing directions.

Which iOS versions support MapKit?

MapKit is available on iOS 3 and later. Currently, 99.8% of iOS users worldwide can use this framework.

What are alternatives to MapKit?

Related frameworks include Corelocation. Each has different capabilities and iOS version requirements.