<!--
{
  "availability" : [
    "iOS: 13.0.0 -",
    "iPadOS: 13.0.0 -",
    "macCatalyst: 13.1.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "CarPlay",
  "identifier" : "/documentation/CarPlay/CPTemplateApplicationScene",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "CarPlay"
    ],
    "preciseIdentifier" : "c:objc(cs)CPTemplateApplicationScene"
  },
  "title" : "CPTemplateApplicationScene"
}
-->

# CPTemplateApplicationScene

A CarPlay scene that controls your app’s user interface.

```
class CPTemplateApplicationScene
```

## Overview

A scene manages your app’s user interface, including the window that CarPlay displays from that scene. Only navigation apps have access to that window, and use it for drawing map content. All other categories of apps use the scene’s interface controller exclusively for constructing their user interfaces.

The scene manages the display of the window on the vehicle’s CarPlay screen, and the life cycle of that scene as CarPlay and the user interact with it. The scene notifies its delegate—an object that conforms to [`CPTemplateApplicationSceneDelegate`](/documentation/CarPlay/CPTemplateApplicationSceneDelegate)—about various state changes and user actions.

You don’t create scenes directly. Instead, you specify the name of the appropriate scene class as part of the CarPlay scene configuration you add to your `Info.plist` file—see the example below—or that you return from your app delegate’s <doc://com.apple.documentation/documentation/UIKit/UIApplicationDelegate/application(_:configurationForConnecting:options:)>  method.

```plist
<key>CPTemplateApplicationSceneSessionRoleApplication</key>
<array> 
    <dict>
        <!-- Specify the name of the scene class. -->
        <key>UISceneClassName</key>
        <string>CPTemplateApplicationScene</string>
        <key>UISceneConfigurationName</key>
        <string>MyCarPlaySceneConfiguration</string> 
        <key>UISceneDelegateClassName</key>
        <string>MyCarPlaySceneDelegate</string> 
    </dict>
</array>
```

## Topics

### Responding to the Scene Life Cycle

[`delegate`](/documentation/CarPlay/CPTemplateApplicationScene/delegate)

The object that receives the scene’s life-cycle events.

[`CPTemplateApplicationSceneDelegate`](/documentation/CarPlay/CPTemplateApplicationSceneDelegate)

The methods for responding to the life cycle events of your app’s scene.

### Accessing the Interface Controller

[`interfaceController`](/documentation/CarPlay/CPTemplateApplicationScene/interfaceController)

The controller that manages the scene’s user interface.

[`CPInterfaceController`](/documentation/CarPlay/CPInterfaceController)

A controller that manages the templates for constructing a scene’s user interface.

### Accessing the Window

[`carWindow`](/documentation/CarPlay/CPTemplateApplicationScene/carWindow)

The window that belongs to the scene.

[`CPWindow`](/documentation/CarPlay/CPWindow)

A window that displays its content on the CarPlay screen.

### Instance Properties

[`contentStyle`](/documentation/CarPlay/CPTemplateApplicationScene/contentStyle)

## Relationships

### Conforms To

[`Equatable`](/documentation/Swift/Equatable)

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

[`UIUserActivityRestoring`](/documentation/UIKit/UIUserActivityRestoring)

[`CustomDebugStringConvertible`](/documentation/Swift/CustomDebugStringConvertible)

[`UIResponderStandardEditActions`](/documentation/UIKit/UIResponderStandardEditActions)

[`Sendable`](/documentation/Swift/Sendable)

[`NSTouchBarProvider`](/documentation/AppKit/NSTouchBarProvider)

[`CustomStringConvertible`](/documentation/Swift/CustomStringConvertible)

[`UIActivityItemsConfigurationProviding`](/documentation/UIKit/UIActivityItemsConfigurationProviding)

[`UIPasteConfigurationSupporting`](/documentation/UIKit/UIPasteConfigurationSupporting)

[`Hashable`](/documentation/Swift/Hashable)

[`SendableMetatype`](/documentation/Swift/SendableMetatype)

[`CVarArg`](/documentation/Swift/CVarArg)

### Inherits From

[`UIScene`](/documentation/UIKit/UIScene)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)