Claude
Skills
Sign in
Back

carplay

Included with Lifetime
$97 forever

CarPlay framework for iOS in-car applications — audio, communication, navigation, parking, EV charging, quick food ordering, fueling, driving task, public safety, and voice-based conversational apps. Includes widgets, live activities, CarPlay Ultra, and instrument cluster support.

Image & Video

What this skill does


# CarPlay Skill

## When to Use This Skill

Use this skill when:
- Developing CarPlay apps for iOS
- Building audio, podcast, or music apps for CarPlay
- Creating navigation apps with turn-by-turn guidance
- Implementing communication apps (messaging, VoIP)
- Building parking, EV charging, or food ordering apps
- Building driving task, fueling, or public safety apps
- Creating voice-based conversational apps (iOS 26.4+)
- Adding widgets or live activities to CarPlay (iOS 26+)
- Implementing CarPlay notifications
- Enabling multitouch navigation on CarPlay maps (iOS 26+)
- Providing instrument cluster or HUD metadata (iOS 17.4+)
- Working with CPTemplate, CPInterfaceController, or any CarPlay APIs

## Description
Complete CarPlay framework documentation covering all 10 app categories: audio, communication, navigation, parking, EV charging, quick food ordering, fueling, driving task, public safety, and voice-based conversational. Includes all templates, UI elements, navigation APIs, widgets, live activities, CarPlay Ultra, notifications, instrument cluster metadata, and multitouch navigation.

## Quick Reference

### Core Components

### Api Reference
- `CPInterfaceController`
- `CPWindow`
- `CarPlay`

### Communication
- `CPContact`
- `CPMessageListItem`

### Getting Started
- `CPSessionConfiguration`
- `CPTemplateApplicationScene`
- `CPTemplateApplicationSceneDelegate`
- `CPTemplateApplicationScene.open(_:options:completionHandler:)`

### Navigation
- `CPManeuver`
- `CPNavigationSession`
- `CPRouteChoice`
- `CPRouteInformation`
- `CPTrip`
- `CPManeuverType`
- `CPJunctionType`
- `CPTrafficSide`
- `CPLaneStatus`

### Poi
- `CPPointOfInterest`

### Templates
- `CPActionSheetTemplate`
- `CPAlertTemplate`
- `CPContactTemplate`
- `CPGridTemplate`
- `CPInformationTemplate`
- `CPListTemplate`
- `CPMapTemplate`
- `CPNowPlayingTemplate`
- `CPPointOfInterestTemplate`
- `CPSearchTemplate`
- `CPTabBarTemplate`
- `CPTemplate`
- `CPVoiceControlTemplate`

### Ui Elements
- `CPAlertAction`
- `CPBarButton`
- `CPButton`
- `CPGridButton`
- `CPInformationItem`
- `CPListImageRowItem`
- `CPListItem`
- `CPListSection`
- `CPTextButton`

### Dashboard (iOS 13.4+)
- `CPDashboardButton`
- `CPDashboardController`
- `CPTemplateApplicationDashboardScene`
- `CPTemplateApplicationDashboardSceneDelegate`

### Instrument Cluster (iOS 15.4+)
- `CPInstrumentClusterController`
- `CPTemplateApplicationInstrumentClusterScene`
- `CPTemplateApplicationInstrumentClusterSceneDelegate`

### Notifications
- `UNAuthorizationOptions.carPlay`
- `.allowInCarPlay`

### Widgets & Live Activities
- `.supportedFamilies`
- `.supplementalActivityFamilies`


## Key Concepts

### Platform Support
- iOS 12.0+ (Core CarPlay)
- iOS 13.4+ (Dashboard scenes)
- iOS 14.0+ (Tab Bar, POI, Now Playing)
- iOS 15.4+ (Instrument Cluster)
- iOS 16.0+ (Fueling, Driving Task categories; POI selectedPinImage; Information nav bar buttons)
- iOS 17.4+ (CPRouteInformation, resumeTrip, navigation metadata, re-route)
- iOS 18.4+ (Sports mode for Now Playing)
- iOS 26+ (Widgets in CarPlay, Live Activities in CarPlay, multitouch navigation, list element styles)
- iOS 26.4+ (Voice-based conversational apps, voice control action/nav bar buttons)
- iPadOS 12.0+
- Mac Catalyst 13.1+

### CarPlay App Categories

**⚠️ Important:** CarPlay apps require entitlements from Apple. You must request and receive approval for your specific app category before your app can connect to CarPlay.

CarPlay supports apps in the following 10 categories (each requires a separate entitlement):

- **Audio & Podcasts** (iOS 12+, depth limit: 5)
  - Entitlement: `com.apple.developer.carplay-audio`
  - Requirements: Audio playback, Now Playing integration, `MPNowPlayingInfoCenter`

- **Communication** (iOS 12+, depth limit: 5)
  - Entitlement: `com.apple.developer.carplay-communication`
  - Requirements: CallKit integration, SiriKit integration

- **Navigation** (iOS 12+, depth limit: 5)
  - Entitlement: `com.apple.developer.carplay-maps`
  - Requirements: Real-time navigation, route guidance, map rendering

- **Parking** (iOS 14+, depth limit: 5)
  - Entitlement: `com.apple.developer.carplay-parking`
  - Requirements: Location services, parking availability

- **EV Charging** (iOS 14+, depth limit: 5)
  - Entitlement: `com.apple.developer.carplay-charging`
  - Requirements: Charging station data, availability status

- **Quick Food Ordering** (iOS 14+, depth limit: 3)
  - Entitlement: `com.apple.developer.carplay-quick-ordering`
  - Requirements: Streamlined menu browsing, order placement, pickup

- **Fueling** (iOS 16+, depth limit: 3)
  - Entitlement: `com.apple.developer.carplay-fueling`
  - Requirements: Station locations, pump control, payment

- **Driving Task** (iOS 16+, depth limit: 3)
  - Entitlement: `com.apple.developer.carplay-driving-task`
  - Requirements: Tasks done while driving (road conditions, tolls, accessories). Must not duplicate navigation.

- **Public Safety** (iOS 14+, depth limit: 3)
  - Entitlement: `com.apple.developer.carplay-public-safety`
  - Requirements: Real-time safety information (hazards, speed cameras, emergency alerts)

- **Voice-Based Conversational** (iOS 26.4+, depth limit: 3)
  - Entitlement: `com.apple.developer.carplay-voice-based-conversation`
  - Requirements: Primarily voice-driven interaction. Uses `CPVoiceControlTemplate` as primary UI.

**How to request entitlements:**
1. Visit https://developer.apple.com/contact/carplay/
2. Describe your app's functionality and category
3. Wait for Apple's review and approval (typically 1-2 weeks)
4. Add the approved entitlement to your Xcode project

### Template-Based UI
CarPlay uses a template-based system where Apple provides the UI components and you provide the content. This ensures:
- Driver-safe interfaces optimized for in-car use
- Consistent user experience across all CarPlay apps
- Automatic adaptation to different vehicle displays

### Template Availability Matrix

Not all templates are available to every category. Key restrictions:
- **Navigation only:** `CPMapTemplate`
- **Communication only:** `CPContactTemplate`
- **Audio apps:** Max 4 tabs in `CPTabBarTemplate`; all others: max 5 tabs
- **Food ordering / Fueling / Driving task / Public safety / Voice-based:** Template depth limit of 3 (vs. 5 for audio, communication, navigation, parking, EV charging)

See `references/developer_guide.md` for full per-category template lists.

### CarPlay Ultra

CarPlay Ultra is Apple's next-generation in-vehicle experience that deeply integrates with the vehicle's displays, including the instrument cluster, center console, and passenger displays. Apps that support CarPlay automatically work with CarPlay Ultra — no additional API adoption is required. CarPlay Ultra uses the same template-based system and entitlements.

### Widgets in CarPlay (iOS 26+)

WidgetKit widgets can appear on the CarPlay home screen. To support CarPlay:
- Add `.accessoryCircular` or `.accessoryRectangular` to your widget's `supportedFamilies`
- Keep widget content simple and glanceable — no interactive controls
- Widgets refresh on the same timeline as the iPhone

### Live Activities in CarPlay (iOS 26+)

Live Activities can appear in CarPlay for real-time updates (delivery tracking, sports scores, ride status). To opt in:
- Add `.carPlay` to your `ActivityConfiguration`'s `supplementalActivityFamilies`
- Use compact and minimal presentations suitable for driving
- Live Activities appear as persistent banners in the CarPlay interface

### Voice-Based Conversational Apps (iOS 26.4+)

A new app category for AI assistants and voice-driven experiences. Uses `CPVoiceControlTemplate` as the primary interface with:
- Action buttons for quick commands below the voice visualization
- Navigation bar buttons for supplemental controls
- Minimal visual UI — interaction is primarily through speech

### Notifications in CarPlay

Apps can deliver notifications to CarPlay. Requirements:
- Request `.carPlay` in `UNA
Files: 12
Size: 119.5 KB
Complexity: 61/100
Category: Image & Video

Related in Image & Video