• CarPlayManager is the main object responsible for orchestrating interactions with a Mapbox map on CarPlay.

    Messages declared in the CPApplicationDelegate protocol should be sent to this object in the containing application’s application delegate. Implement CarPlayManagerDelegate in the containing application and assign an instance to the delegate property of your CarPlayManager instance.

    Note

    It is very important you have a single CarPlayManager instance at any given time. This should be managed by your UIApplicationDelegate class if you choose to supply your accessToken to the CarPlayManager.eventsManager via NavigationEventsManager.init(dataSource:accessToken:mobileEventsManager), instead of the Info.plist.
    See more

    Declaration

    Swift

    @available(iOS 12.0, *)
    public class CarPlayManager : NSObject
    extension CarPlayManager: CPApplicationDelegate
    extension CarPlayManager: CPInterfaceControllerDelegate
    extension CarPlayManager: CPMapTemplateDelegate
    extension CarPlayManager: CarPlayNavigationDelegate
  • CarPlayManagerDelegate is the main integration point for Mapbox CarPlay support.

    Implement this protocol and assign an instance to the delegate property of the shared instance of CarPlayManager.

    If no delegate is set, a default built-in MapboxNavigationService will be created and used when a trip begins.

    See more

    Declaration

    Swift

    @available(iOS 12.0, *)
    public protocol CarPlayManagerDelegate : AnyObject, UnimplementedLogging
  • CarPlayNavigationViewController is a fully-featured turn-by-turn navigation UI for CarPlay.

    Seealso

    NavigationViewController
    See more

    Declaration

    Swift

    @available(iOS 12.0, *)
    public class CarPlayNavigationViewController : UIViewController, NavigationMapViewDelegate
    extension CarPlayNavigationViewController: StyleManagerDelegate
  • The CarPlayNavigationDelegate protocol provides methods for reacting to significant events during turn-by-turn navigation with CarPlayNavigationViewController.

    See more

    Declaration

    Swift

    @available(iOS 12.0, *)
    public protocol CarPlayNavigationDelegate : AnyObject, UnimplementedLogging
  • The activity during which a CPTemplate is displayed. This enumeration is used to distinguish between different templates during different phases of user interaction.

    See more

    Declaration

    Swift

    @available(iOS 12.0, *)
    public enum CarPlayActivity : Int
  • A control indicating the direction that the vehicle is traveling towards.

    See more

    Declaration

    Swift

    open class CarPlayCompassView : StylableView
  • CarPlayMapViewController is responsible for administering the Mapbox map, the interface styles and the map template buttons to display on CarPlay.

    See more

    Declaration

    Swift

    @available(iOS 12.0, *)
    public class CarPlayMapViewController : UIViewController
    extension CarPlayMapViewController: StyleManagerDelegate
  • CarPlaySearchController is the main object responsible for managing the search feature on CarPlay.

    Messages declared in the CPApplicationDelegate protocol should be sent to this object in the containing application’s application delegate. Implement CarPlaySearchControllerDelegate in the containing application and assign an instance to the delegate property of your CarPlaySearchController instance.

    Note

    It is very important you have a single CarPlaySearchController instance at any given time.
    See more

    Declaration

    Swift

    @available(iOS 12.0, *)
    public class CarPlaySearchController : NSObject
    extension CarPlaySearchController: CPSearchTemplateDelegate
    extension CarPlaySearchController: CPListTemplateDelegate
  • The CarPlayConnectionObserver protocol provides notification of a carplay unit connecting two the NavigationViewController.

    See more

    Declaration

    Swift

    public protocol CarPlayConnectionObserver : AnyObject