View in English

  • Apple Developer
    • Get Started

    Explore Get Started

    • Overview
    • Learn
    • Apple Developer Program

    Stay Updated

    • Latest News
    • Hello Developer
    • Platforms

    Explore Platforms

    • Apple Platforms
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    • App Store

    Featured

    • Design
    • Distribution
    • Games
    • Accessories
    • Web
    • Home
    • CarPlay
    • Technologies

    Explore Technologies

    • Overview
    • Xcode
    • Swift
    • SwiftUI

    Featured

    • Accessibility
    • App Intents
    • Apple Intelligence
    • Games
    • Machine Learning & AI
    • Security
    • Xcode Cloud
    • Community

    Explore Community

    • Overview
    • Meet with Apple events
    • Community-driven events
    • Developer Forums
    • Open Source

    Featured

    • WWDC
    • Swift Student Challenge
    • Developer Stories
    • App Store Awards
    • Apple Design Awards
    • Apple Developer Centers
    • Documentation

    Explore Documentation

    • Documentation Library
    • Technology Overviews
    • Sample Code
    • Human Interface Guidelines
    • Videos

    Release Notes

    • Featured Updates
    • iOS
    • iPadOS
    • macOS
    • watchOS
    • visionOS
    • tvOS
    • Xcode
    • Downloads

    Explore Downloads

    • All Downloads
    • Operating Systems
    • Applications
    • Design Resources

    Featured

    • Xcode
    • TestFlight
    • Fonts
    • SF Symbols
    • Icon Composer
    • Support

    Explore Support

    • Overview
    • Help Guides
    • Developer Forums
    • Feedback Assistant
    • Contact Us

    Featured

    • Account Help
    • App Review Guidelines
    • App Store Connect Help
    • Upcoming Requirements
    • Agreements and Guidelines
    • System Status
  • Quick Links

    • Events
    • News
    • Forums
    • Sample Code
    • Videos
 

Videos

Open Menu Close Menu
  • Collections
  • All Videos
  • About

Back to WWDC26

  • About
  • Summary
  • Transcript
  • Code
  • Rev up your CarPlay app

    Explore new features for your CarPlay audio, navigation, voice-based conversational apps, and more. Discover how to create CarPlay video apps so people can browse and watch their favorite videos in supported vehicles when parked. Learn how to integrate thumbnails, media information, and voice controls in your CarPlay app.

    Chapters

    • 0:00 - Introduction
    • 0:42 - Apps in CarPlay
    • 2:51 - CarPlay framework
    • 11:54 - Navigation apps
    • 15:19 - CarPlay Simulator

    Resources

    • CarPlay for developers
      • HD Video
      • SD Video

    Related Videos

    WWDC25

    • Turbocharge your app for CarPlay
  • Search this video…

    Hi, I'm Chris, an engineer on the car experience team. I'm delighted to go over what's new in CarPlay for iOS 27. CarPlay is the smarter, safer way to use your iPhone in the car. iOS 27 brings new capabilities to all categories of CarPlay apps so you can rev up your app in CarPlay.

    We'll introduce new app categories supported in CarPlay and cover CarPlay framework updates that apply to all apps. We'll also talk about new features specific to CarPlay navigation apps … and see what's new in the CarPlay Simulator.

    CarPlay supports a wide variety of app categories.

    Audio apps can play music, podcasts, and more. Communication apps allow people to send and receive messages, and make phone calls. Navigation apps provide turn-by-turn directions. What all CarPlay apps have in common is that they help people accomplish important tasks without taking out their iPhone.

    In addition, CarPlay supports Live Activities and widgets from any app. You can display timely, relevant information even if your app is not specifically designed for CarPlay. This year we added support for voice-based conversational apps … … and now with iOS 27 you can create apps to browse and play videos in new cars that support the video in car feature. If your app supports AirPlay video streaming, no changes are needed. People can already watch videos from your app on their CarPlay display when they aren't driving. To do so, they simply select the car's display when playing the video on iPhone. Now you can take it to the next level and let people browse their favorite videos from iPhone right on their CarPlay display. It's great for those situations where you're sitting in your car waiting for a friend at the airport, parked at a charging station, or just taking a moment in the comfort of your car. CarPlay video apps work in cars that support the video in car feature. CarPlay video apps need to support AirPlay video streaming … … and use the CarPlay framework to provide a browsing experience on the CarPlay display. In the next section we'll review additions to the CarPlay framework that help you create a video browsing UI. But first a few additional notes about video apps.

    At any given time, the car may indicate that video playback is not available. If this happens your video will be played as audio-only. This is great for continuing to listen to a podcast or sports broadcast while driving. Apps with the CarPlay video entitlement only appear on the CarPlay home screen if the car supports the video in car feature. If your app's content is suitable for both video and audio listening, include both CarPlay audio app and CarPlay video app entitlements. With both entitlements your app can always appear in CarPlay. Whether a car supports CarPlay or CarPlay Ultra, you can enable your apps on the driver's screens by supporting the CarPlay framework. From getting directions, sending a message, to finding a parking garage, apps across all categories use the CarPlay framework to present their user interface.

    We have plenty of UI updates for all CarPlay apps, including many enhancements for lists, a new MiniPlayer for now playing, and voice control has a new presentation style.

    When your app is using the CarPlay framework, iOS manages the display of UI elements and handles the interface with the car.

    By using a rich collection of templates your app does not need to manage the layout of UI elements for different screen resolutions, or support different input hardware such as touchscreens, knobs, or touch pads.

    We have a sample app called Landmarks, which lets people explore interesting sites around the world. For CarPlay, I wanted to listen to narrated audio stories that tell the history and key facts of the landmarks. Using the CarPlay framework, I built a list of the stories that worked great for browsing and then playing the audio stories in my car. But with this new car that supports the video in car feature now I can also watch videos of these amazing landmarks. Landmarks is checking if the CPSessionConfiguration supports video and if so, adds a videos tab.

    This list of videos showcases many of the other new APIs available in CarPlay framework. Let's take a closer look. Lists can now show images with portrait or landscape aspect ratios. Card elements take that even further with thumbnails, which can have overlays, playback progress, and sports information right on the image. Landmarks uses an overlay with a title that describes the video as newly added or live streaming. For custom badges, overlays can also be an image. The CPPlaybackConfiguration API is how your app provides metadata about playable items to CarPlay framework. For content you'd prefer to play as a video, set preferred presentation to video. Otherwise set the preferred presentation to audio. The playback configuration's elapsed time and duration are shown a progress bar for your playable item… … and the playback action indicates if selecting this item will play, pause, or replay this item. Make sure to update the thumbnail's playback configuration on any playback state changes …to keep the thumbnail accurately representing the state of playback for that item.

    An additional overlay is available for showing sports teams and scores. The sports overlay has a left team,... … a right team, … … and event status.

    Use a details header when you want to present one item prominently at the top of a list of additional items. This works great for showing the current episode at the top of a list of episodes, or for summarizing a movie with bonus content shown below. The details header combines together a single thumbnail … … with a title … … body text, … … playback configuration, … … and action buttons.

    Here the Landmarks app added a thumbnail overlay, configured playback as an unplayed item, and setup action buttons for play and add to playlist. The playback configuration's current progress is automatically combined with the first action button. As with the playback configuration on thumbnails, update the playback configuration in the details header as the playback state changes. This ensures that the state and progress are correct when the details header becomes visible again.

    New in iOS 27 is a MiniPlayer for the now playing template. The MiniPlayer makes it easy to see what's playing and on a larger display you can even play, pause, or skip. All apps that show now playing will automatically show the MiniPlayer. The MiniPlayer is the best option for now playing in CarPlay, but if your app doesn't want to show the MiniPlayer … … set the now playing template's "allowsMiniPlayer" property to false, and the now playing icon will appear in the navigation bar instead of the MiniPlayer. Earlier this year we launched support for voice-based conversational apps. If your app has its own voice features, you can respond to questions and perform actions in the car. The Voice Control template presents a UI that shows status and control during voice conversations. Starting in iOS 27, the Voice Control template is available for all CarPlay app categories. The Voice Control template includes a prompt, and an animated icon to indicate the state of the conversation. Both the prompt and the icon are optional. Your app can now add up to two action buttons, plus leading and trailing navigation bar buttons. If your app is used to ask questions about destinations or contact information, action buttons are a good way to offer to start navigation or place a phone call.

    To use URLs to perform those tasks, open the URL with CPTemplateApplicationScene to perform that request in CarPlay.

    The Voice Control template is also available as an overlay. Instead of occupying the entire display, your Voice Control elements can appear overlaid on top of another template, such as the Map Template in a navigation app. Use the CPInterfaceController to show the voice control template as an overlay. Although the overlay supports the same text and buttons as the full voice control presentation, provide shorter text variants to better fit the available space when presented as an overlay. When supporting voice conversations, try using audio feedback to indicate the status of the conversation. Feedback sounds such as waiting sounds while the app is still preparing the conversation and processing sounds when the app is still preparing a response are helpful cues when interacting with an app primarily through speaking. Setup your AVAudioSession with the play and record category, use the default mode, and disable mixing.

    In addition to the new template APIs, we've expanded the availability of existing templates to more categories of apps. For details about app categories and available templates, check the CarPlay Developer Guide.

    We covered a lot of new UI enhancements available for apps in CarPlay. The easiest way for me to see all the improvements I made in Landmarks is right here on my Mac, using CarPlay Simulator. Let's take a look! Here is CarPlay Simulator and I've setup the configuration to represent a vehicle that supports video.

    For vehicles that support video, an app with only the CarPlay video entitlement will appear on the CarPlay home screen. Here's the Landmarks app on the home screen, I'll launch it to browse videos.

    On the top left, there's a tab bar.

    I added a new videos tab that only appears when video is supported.

    The MiniPlayer in the top right offers a quick way to resume playback on the Alps video I was recently watching.

    I setup wide thumbnails for the landmarks. Since I was already watching the Alps video, the thumbnail's playback configuration shows the remaining time and current progress.

    Overlays on the thumbnails provide badging for newly added and live streaming videos.

    The thumbnail for this event has a sports overlay showing the teams and scores. While browsing this list of landmarks, I wanted to know which landmark has the most visitors every year. I added this list row to activate a voice conversation where I can ask that question.

    The voice control template is shown as an overlay, keeping the list behind it visible. But I want to get straight to watching a video.

    Selecting a thumbnail pushes into a list template that has a details header. The details header provides this large thumbnail, and additional information about the landmark using the title, subtitle, and body text.

    I also added two buttons for play and add to playlist.

    The rest of the list is used to show related videos. Landmarks set the preferred presentation to video in the header's playback configuration. Since video is the preferred presentation and CarPlay Simulator is currently set to allow video playback, tapping play will show the video. I'll go ahead and play this video! The video player has menus to control subtitles and audio language selection, so your videos should include subtitles and additional languages when available. Notifications can appear over the video, so there's also a button to enable the Do Not Disturb focus mode without leaving the video.

    With thumbnail overlays, the MiniPlayer, voice control, and playback configurations, Landmarks built a great interface for discovering and playing videos in the car. Now that we've seen all the new UI features in CarPlay framework, let's change directions to focus on a few more new features for navigation apps. Navigation apps now have more control over the primary interface area of the Map template, and Route sharing coordinates your app's routing with the vehicle. In iOS 27, your navigation app can show panels to create your own UI, independently from the flow of presenting trip and route options. Panels can also include multiple UI elements, providing more flexibility for your navigation UI.

    Panels are built by combining together a list of objects you already use in the CarPlay framework, such as trips, grids, route choices, route details, waypoints, and other list items.

    The panel's button configuration sets up actions that will appear on the bottom of the panel, such as a "Go" or "End" button.

    When your navigation app uses panels, you control the primary interface area of the map template. By building up and then pushing panels, your app can show more content and controls while keeping the map visible. Some vehicles with driver assistance systems work best when the intended route is known. For example, vehicles may support automatic lane changes, or adjust their guidance systems to more closely match the route shown in your app. Also, for a certain route, electric vehicles may suggest charging stops depending on the vehicle's available range.

    With Route sharing, these driver assistance features can work even when people use your CarPlay navigation app to get directions.

    Route sharing requires iOS 26.4 or later, and a supported vehicle.

    Your app provides a route to the vehicle as an array of route segments which are geographic coordinates that are sent to the vehicle whenever the trip changes.

    Looking at the Landmarks app has inspired me to go on a camping trip. I'm leaving early in the morning and want to stop at a coffee shop along the way so I added two stops into a navigation app first coffee then a campground. Using the CarPlay framework, the navigation app constructed a trip with two route segments. Route sharing sent that trip to the vehicle. Since my car is an electric vehicle, it estimated the energy consumption along this trip and determined that this trip requires a charging stop along the way. The vehicle searched for the ideal charging station for this trip and sent that destination back to iOS.

    This proposed waypoint is received by the navigation app via the map template. The navigation app then has a choice in how to handle the suggested waypoint. By returning updated travel estimates to the map template, the map template will automatically prompt the driver to accept the additional waypoint. Or the navigation app can not return travel estimates and instead directly manage confirmation of the additional waypoint. Either way, once the driver accepts the waypoint… … the navigation app updates the trip to have a new route segment.

    Then the updated trip is again shared with the vehicle. Now I'll stop at the charging station and then the coffee shop and both me and the car will get there energized.

    Both the driver and your app control when Route sharing occurs. When pairing with a vehicle, the driver is prompted to approve Route sharing for that vehicle. The driver's approval allows any navigation app to share a route when connected to that vehicle. To enable sharing routes from your navigation app, opt-in to Route sharing using the Map template.

    If your app determines that certain trips are not eligible, Route sharing can also be disabled for an individual trip.

    CarPlay Simulator makes testing your CarPlay app as easy as connecting to your Mac! For any category of app in CarPlay, CarPlay Simulator supports testing different screen sizes and vehicle configurations.

    CarPlay Simulator is now available in Device Hub. Navigation app developers should try out the new diagnostic tools for route sharing. For video app developers, download CarPlay Simulator using the Additional Tools for Xcode package.

    Now that you've seen the new template options, consider adding thumbnails, the details header, and voice control to your app in CarPlay. If your app has videos, make them available for browsing in CarPlay.

    Finally if you have a navigation app, check out the new panels and route sharing.

    Thanks for following along as I pointed out these new features and of course I'm looking forward to seeing how you'll use them to rev up your app in CarPlay!

    • 6:45 - Disable the MiniPlayer

      // Disable the MiniPlayer
      
      CPNowPlayingTemplate.shared.allowsMiniPlayer = false
    • 15:06 - Enable route sharing

      // Enable route sharing
      
      func mapTemplateShouldProvideRouteSharing(_ mapTemplate: CPMapTemplate) -> Bool { true }
    • 15:12 - Disable route sharing for this trip

      // Disable route sharing for this trip
      
      trip.routeSegmentsAvailableForRegion = false
    • 0:00 - Introduction
    • CarPlay is the smarter, safer way to use your iPhone in the car. iOS 27 brings new capabilities to all categories of CarPlay apps.

    • 0:42 - Apps in CarPlay
    • CarPlay supports a range of app categories, including Live Activities and widgets from any app, and new this year, voice-based conversational apps and video browsing in supported cars.

    • 2:51 - CarPlay framework
    • iOS 27 introduces enhancements for lists, a MiniPlayer for now playing, and a new presentation style for voice control.

    • 11:54 - Navigation apps
    • Navigation apps have more control over the primary interface area of the Map template and Route sharing coordinates your app’s routing with the vehicle.

    • 15:19 - CarPlay Simulator
    • CarPlay Simulator makes testing your CarPlay app as easy as connecting to your Mac.

Developer Footer

  • Videos
  • WWDC26
  • Rev up your CarPlay app
  • Open Menu Close Menu
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    • App Store
    Open Menu Close Menu
    • Swift
    • SwiftUI
    • Swift Playground
    • TestFlight
    • Xcode
    • Xcode Cloud
    • Icon Composer
    • SF Symbols
    Open Menu Close Menu
    • Accessibility
    • Accessories
    • Apple Intelligence
    • Audio & Video
    • Augmented Reality
    • Business
    • Design
    • Distribution
    • Education
    • Games
    • Health & Fitness
    • In-App Purchase
    • Localization
    • Maps & Location
    • Machine Learning & AI
    • Security
    • Safari & Web
    Open Menu Close Menu
    • Documentation
    • Downloads
    • Sample Code
    • Videos
    Open Menu Close Menu
    • Help Guides & Articles
    • Contact Us
    • Forums
    • Feedback & Bug Reporting
    • System Status
    Open Menu Close Menu
    • Apple Developer
    • App Store Connect
    • Certificates, IDs, & Profiles
    • Feedback Assistant
    Open Menu Close Menu
    • Apple Developer Program
    • Apple Developer Enterprise Program
    • App Store Small Business Program
    • MFi Program
    • Mini Apps Partner Program
    • News Partner Program
    • Video Partner Program
    • Security Bounty Program
    • Security Research Device Program
    Open Menu Close Menu
    • Meet with Apple
    • Apple Developer Centers
    • App Store Awards
    • Apple Design Awards
    • Apple Developer Academies
    • WWDC
    Read the latest news.
    Get the Apple Developer app.
    Copyright © 2026 Apple Inc. All rights reserved.
    Terms of Use Privacy Policy Agreements and Guidelines