---
title: "startRecording(handler:)"
framework: replaykit
role: symbol
role_heading: Instance Method
path: "replaykit/rpscreenrecorder/startrecording(handler:)"
---

# startRecording(handler:)

Starts recording the app display.

## Declaration

```swift
func startRecording(handler: (((any Error)?) -> Void)? = nil)
```

## Parameters

- `handler`: A block that is called when the request completes.

## Discussion

Discussion Call startRecording(handler:) on an instance of the recorder to begin recording. When startRecording(handler:) is first called, an alert window appears asking the user to confirm recording. This alert window is also presented if it has been longer than 8 minutes since the last time startRecording(handler:) was called.

## See Also

### Controlling App Recording

- [stopRecording(handler:)](replaykit/rpscreenrecorder/stoprecording(handler:).md)
- [stopRecording(withOutput:completionHandler:)](replaykit/rpscreenrecorder/stoprecording(withoutput:completionhandler:).md)
- [startCapture(handler:completionHandler:)](replaykit/rpscreenrecorder/startcapture(handler:completionhandler:).md)
- [RPSampleBufferType](replaykit/rpsamplebuffertype.md)
- [stopCapture(handler:)](replaykit/rpscreenrecorder/stopcapture(handler:).md)
- [discardRecording(handler:)](replaykit/rpscreenrecorder/discardrecording(handler:).md)
- [startRecording(withMicrophoneEnabled:handler:)](replaykit/rpscreenrecorder/startrecording(withmicrophoneenabled:handler:).md)
