Add CarPlay support to your navigation app using CarPlay.

Posts under CarPlay tag

151 Posts

Post

Replies

Boosts

Views

Activity

CarPlay: CPListTemplate item limit and image memory usage
I’m working with CPListTemplate in CarPlay and have run into two issues: Item limit: The documentation states that maximumItemCount is 500. In practice, when providing a list of ~2–4k items, only the first 500 are displayed. However, Apple Music on CarPlay seems to handle larger lists without this limitation. Is there an API-level approach or recommended pattern to support lists beyond this cap? Image memory usage: Cells don’t appear to load lazily. Even with small images, the first 500 items load all their artwork into memory immediately, resulting in ~400–700 MB usage and high CPU loads. This seems excessive for CarPlay environments. Is there a best practice for deferring or managing image loading within CPListTemplate? Any official guidance or known workarounds for these two issues would be very helpful.
0
0
95
Sep ’25
Detect if a widget is displayed in CarPlay vs. iPhone/iPad
I am looking into the new CarPlay support for systemSmall widgets introduced in iOS 26 (Apple documentation). I am trying to figure out if there is a way to programmatically detect whether the widget is currently being displayed on the iPhone/iPad home/lock screen or in CarPlay. So far, I haven’t found any information in the documentation or APIs that indicate how to distinguish between these environments. Is there an API, environment value, or best practice for handling this scenario? Thanks in advance for any insights!
0
1
99
Aug ’25
CarPlay UI Issues in iOS 26: CPListItem accessoryImage Misplaced and Display Problems
Starting with iOS 26, we've noticed that the accessoryImage in CPListItem is not working as expected in CarPlay. Previously, accessoryImage would appear in place of the accessoryType, but now it appears awkwardly next to the detailText, and the image itself is not rendering properly. We have submitted feedback to Apple multiple times, but the issue still persists in the latest beta releases. In general, there seem to be several CarPlay UI problems introduced in iOS 26. For example: In CPPointOfInterestTemplate, the pinImage is displayed at an excessively large size. Scroll positions in lists behave unexpectedly. CPInformationTemplate allows infinite scrolling, which seems unintended. Please take a look into these issues. Thank you.
3
0
154
Aug ’25
CarPlay CPGridTemplate – buttons show in a row, and limited to 9 buttons
Hi, I’m working with CPGridTemplate in CarPlay. According to the documentation, it supports up to 9 CPGridButton objects and should display them in a grid (up to 3×3). However, I’ve run into two issues: Row instead of grid When I add 4–6 buttons, they don’t appear in a 2×2 or 2×3 grid. Instead, they are shown in a single horizontal row. Even 9 buttons do not appear in a 3x3 grid. More than 9 buttons My use case requires more than 9 icons, but it looks like CPGridTemplate ignores any additional buttons beyond the first 9. Is there any supported way to display more than 9 buttons in a grid, or is pagination/multiple templates the only option? Thanks in advance!
1
0
87
Aug ’25
iOS 26 CarPlay Widgets
My company's app has a few widgets and a couple of them we do not want to show up on CarPlay due to safety concerns when iOS 26 releases. I understand Apple's recommended way to prevent users from using your widget in CarPlay is to use the .disfavoredLocations([.carPlay], for: [.systemSmall]), and this puts your widget in the 'Other' section of the widgets. https://developer.apple.com/download/files/CarPlay-Developer-Guide.pdf However, this .carPlay widget location is only available in Xcode 26, and our app cannot be built on Xcode 26 yet due to some build errors. We are able to fix those build errors in a separate branch, but we won't be doing our official release builds on Xcode 26 until it is out of beta, which is usually right before iOS 26 officially releases to general audiences. We release our app versions on a monthly cadence, so the version that will be out when iOS 26 comes out is already in testing. Is there any existing way we can disable this widget on CarPlay so it does not appear to work when tapped? Currently, it opens our CarPlay app, but the CarPlay app does nothing with it. On the iPhone, when you tap the widget it opens our app and performs a function. We don't wan't to disable it on the iPhone, just when it's on CarPlay. We don't have time before the app release to implement the same functionality on our CarPlay app. I haven't found any reliable way to detect if the widget is running in the CarPlay location versus the iPhone home screen. Thanks in advance for any assistance.
0
13
239
Aug ’25
CPNavigationAlert image size very small with long title variant
I am using CPNavigationAlert and am getting a specific name for the title, so I do not have more than one variant. Sometimes, the variant title is longer, which for some reason makes the image very small. I have tried to make sure to keep displayScale in mind: let maximumImageSize = CPListItem.maximumImageSize let displayScale = self.interfaceController?.carTraitCollection.displayScale ?? 2 let imageSize = CGSizeMake(maximumImageSize.width * displayScale, maximumImageSize.width * displayScale) let image = CarPlayMapUtility().getIconAlertImage(item: item, frame: imageSize) If the titleVariants is shorter, the image is displayed corrected. If it is longer, the image might be extremely small or not shown at all. Is this expected?
Topic: UI Frameworks SubTopic: UIKit Tags:
1
0
59
Aug ’25
Carplay on iOS26 Beta small resolution
Hey, After installing iOS 26 public beta, when using carplay on an aftermarket head unit resolution looks too small. I know it has to with smart zoom setting and disabling it fixes. The problem is that it comes enabled by default with the beta but i can’t disable it. Not because of the small screen but the iPhone can’t handle the high resolution rendering when going on settings and crashes. Does anyone know how to fix this issue? It would be nice if carplay options could be modified from the iPhone directly. Thank you
2
0
104
Aug ’25
IOS 26 beta 6 on Ram unconnect 12 inch screen
hello all, I am wondering is anyone else having trouble with the bottom half of the 12 inch display screen (vertical) with apple CarPlay? it is unresponsive. when I touch the bottom half, nothing happens. i am not able to change any setting because it requires you to touch the bottom half of the display.
0
0
111
Aug ’25
Ios 26 public beta 2 CarPlay glitch
Both Apple and third-party apps in CarPlay are not displaying properly after updating to iOS 26 public beta two. I submitted feedback, wondering if anybody else had this problem and have solved it. The only apps that appear to be working normally are map apps like Apple Maps, Google Maps and Waze. The others show only background, but if you tap on the touchscreen it will perform an action as if the tile/link is there, but invisible
7
3
197
Aug ’25
CarPlay notifications unsupported for Driving Task apps in iOS 18.6
I have my app configured as a Driving Task app with the entitlement and provisioning profile correctly set up. I am also requesting the ".carPlay" notification authorization option and setting up the carplay notification category with the ".allowInCarPlay" category, both without error. When testing with the iPhone and carplay simulators the user notifications I send are appearing on the phone but not in carplay. When I check the notification settings with UNUserNotificationCenter.current().getNotificationSettings() I see that carplay is shown to be not supported ("carPlaySetting: NotSupported"). The CarPlay Developer Guide 2025-06-09 (which is the version currently referenced in the Apple docs) states that "Starting in iOS 18.4, notifications are also supported in CarPlay driving task apps". Has this discrepancy been addressed anywhere, or is this an open issue? My software versions: MacOS: Sequoia 15.6 XCode: 16.4 iPhone Simulator: iPhone 16 with iOS 18.6
2
0
78
Aug ’25
CarPlay Navigation Entitlement
We've been trying to get the CarPlay Navigation Entitlement for a couple years now without much luck. Did you have a similar experience? How did you succeed getting the entitlement? Part of the form requires us to submit Screenshots. Did you provide screenshots of your on-device experience or wireframe for CarPlay? How was your experience?
0
1
115
Aug ’25
CPActionSheetTemplate not detected in presentedTemplate while CPAlertTemplate is
I'm developing a CarPlay app and encountered an inconsistent behavior with template detection. When I present a CPActionSheetTemplate and then print the presentedTemplate property, it returns nil. However, when I present a CPAlertTemplate, the presentedTemplate property correctly returns the template object. This inconsistency is causing issues in my app where I need to check if there's already a presented template before showing another one to avoid conflicts. Why does CPActionSheetTemplate not get detected in presentedTemplate while CPAlertTemplate does? Is this intended behavior or a bug? Any guidance on how to properly detect if a CPActionSheetTemplate is currently presented would be greatly appreciated.
0
0
42
Jul ’25
Live Weather Radar Overlay in CarPlay Maps
Hi all — I wanted to share an idea I recently submitted through Feedback Assistant that I think could improve safety and usability for drivers using CarPlay: Add an option to overlay live weather radar (rain, snow, storms, etc.) directly onto CarPlay Maps while navigating. Similar to how traffic conditions are shown now, this would allow drivers to visually track incoming weather in real time without switching apps or relying on separate devices. Why this matters: • Enhances driver safety by increasing situational awareness • Helps with trip planning and route adjustments around severe weather • Reduces distractions by integrating everything into one screen • Useful for everyday drivers, long-haul travelers, and first responders I submitted this via Feedback Assistant, but I’d love to know what others think. If you also see value in this feature, consider submitting your own version via Feedback Assistant so Apple sees there’s interest. Let’s push for smarter, safer navigation — thanks for reading!
3
0
709
Jul ’25
Hi,I applied for the COMMUNICATION capability failed, what should I do next?
Hi,I applied for the COMMUNICATION capability, but have a message that I already have the driving task app entitlement. After that ,I have applied one more time ,there is no reply anymore. I do not have the com.apple.developer.carplay-communication capability, that means I can not apply this capability? What should i do next to get this capatibility? Thanks
2
0
1.1k
Jul ’25
Method to capture voice input when using CPVoiceControlTemplate
In my navigation CarPlay app I am needing to capture voice input and process that into text. Is there a built in way to do this in CarPlay? I did not find one, so I used the following, but I am running into issues where the AVAudioSession will throw an error when I am trying to set active to false after I have captured the audio. public func startRecording(completionHandler: @escaping (_ completion: String?) -> ()) throws { // Cancel the previous task if it's running. if let recognitionTask = self.recognitionTask { recognitionTask.cancel() self.recognitionTask = nil } // Configure the audio session for the app. let audioSession = AVAudioSession.sharedInstance() try audioSession.setCategory(.record, mode: .default, options: [.duckOthers, .interruptSpokenAudioAndMixWithOthers]) try audioSession.setActive(true, options: .notifyOthersOnDeactivation) let inputNode = self.audioEngine.inputNode // Create and configure the speech recognition request. self.recognitionRequest = SFSpeechAudioBufferRecognitionRequest() guard let recognitionRequest = self.recognitionRequest else { fatalError("Unable to created a SFSpeechAudioBufferRecognitionRequest object") } recognitionRequest.shouldReportPartialResults = true // Keep speech recognition data on device recognitionRequest.requiresOnDeviceRecognition = true // Create a recognition task for the speech recognition session. // Keep a reference to the task so that it can be canceled. self.recognitionTask = self.speechRecognizer.recognitionTask(with: recognitionRequest) { result, error in var isFinal = false if let result = result { // Update the text view with the results. let textResult = result.bestTranscription.formattedString isFinal = result.isFinal let confidence = result.bestTranscription.segments[0].confidence if confidence > 0.0 { isFinal = true completionHandler(textResult) } } if error != nil || isFinal { // Stop recognizing speech if there is a problem. self.audioEngine.stop() do { try audioSession.setActive(false, options: .notifyOthersOnDeactivation) } catch { print(error) } inputNode.removeTap(onBus: 0) self.recognitionRequest = nil self.recognitionTask = nil if error != nil { completionHandler(nil) } } } // Configure the microphone input. let recordingFormat = inputNode.outputFormat(forBus: 0) inputNode.installTap(onBus: 0, bufferSize: 1024, format: recordingFormat) { (buffer: AVAudioPCMBuffer, when: AVAudioTime) in self.recognitionRequest?.append(buffer) } self.audioEngine.prepare() try self.audioEngine.start() } Again, is there a build-in method to capture audio in CarPlay? If not, why would the AVAudioSession throw this error? Error Domain=NSOSStatusErrorDomain Code=560030580 "Session deactivation failed" UserInfo={NSLocalizedDescription=Session deactivation failed}
3
0
124
Jul ’25
WiFi 6 MIMO and spatial audio support
On "Accessory Interface Specification CarPlay Addendum R10", it says that it is recommended that the accessory uses a MIMO (2x2) hardware configuration, does this imply that WiFi 5 and SISO (1X1) will be phased out in the near future? When will WiFi 6 MIMO (2x2) become mandatory? On "Accessory Interface Specification CarPlay Addendum R10", it says that Spatial Audio is mandatory. However, for aftermarket in-vehicle infotainment (IVI) system due to the number of speakers are less than 6, is it allowed not to support spatial audio for this type of aftermarket IVI system?
1
0
63
Jul ’25
WiFi 6 MIMO and spatial audio support for CarPlay
On "Accessory Interface Specification CarPlay Addendum R10", it says that it is recommended that the accessory uses a MIMO (2x2) hardware configuration, does this imply that WiFi 5 and SISO (1X1) will be phased out in the near future? When will WiFi 6 MIMO (2x2) become mandatory? On "Accessory Interface Specification CarPlay Addendum R10", it says that Spatial Audio is mandatory. However, for aftermarket in-vehicle infotainment (IVI) system due to the number of speakers are less than 6, is it allowed not to support spatial audio for this type of aftermarket IVI system?
0
0
56
Jul ’25