What problem does it solve?
Helps iOS developers implement CarPlay-enabled applications that must operate within vehicle display constraints, manage entitlement requirements, and present template-driven UIs across navigation, audio, communication, and POI scenarios.
Core Features & Use Cases
- Entitlement & Setup: Guidance for requesting CarPlay entitlements, configuring App ID and provisioning profiles, and adding the scene manifest to Info.plist.
- Scene & Lifecycle Management: Instructions for implementing CPTemplateApplicationSceneDelegate variants for navigation and non-navigation apps and handling multiple CarPlay scenes.
- Template Patterns: Templates coverage including CPTabBarTemplate, CPListTemplate, CPMapTemplate, CPNowPlayingTemplate, CPPointOfInterestTemplate and best practices for push/present semantics.
- Navigation & Sessions: Patterns for trip preview, starting and managing navigation sessions, maneuvers, lane guidance, and navigation alerts.
- Audio, Communication & POI Flows: Now Playing integration, assistant/intent cells, message and contact templates, and quick food-ordering or EV charging flows optimized for CarPlay limits.
- Testing & Validation: Simulator configuration recommendations, vehicle display limits handling, and a review checklist for common mistakes and production readiness.
- Use Case Example: Implement a navigation app that sets a CPMapTemplate as root, shows trip previews, starts a navigation session with maneuvers, and respects vehicle session limits.
Quick Start
Add the CarPlay entitlement, declare the CarPlay scene in Info.plist, and implement CPTemplateApplicationSceneDelegate to set an appropriate root template (CPTabBarTemplate for general apps or CPMapTemplate for navigation) when the interface controller connects.