ReplayKit Namespace

Allows screen recording within an iOS app.

Classes

NSExtensionContext_RPBroadcastExtension
RPBroadcastActivityViewController

Presents a user interface for choosing third-party broadcast services.

RPBroadcastActivityViewControllerDelegate

Responds to changes in the UI that is presented by a RPBroadcastActivityViewController.

RPBroadcastConfiguration
RPBroadcastController

Manages an audio or video broadcast stream.

RPBroadcastControllerDelegate

Delegate object that responds to changes in a broadcast.

RPBroadcastControllerDelegate_Extensions

Extension methods to the IRPBroadcastControllerDelegate interface to support all the methods from the RPBroadcastControllerDelegate protocol.

RPBroadcastHandler

Base class for managing Replay Kit broadcasts.

RPBroadcastMP4ClipHandler
RPBroadcastSampleHandler

Processes ReplayKit buffer obects as they arrive.

RPPreviewViewController

A view controller for previewing and editing a ReplayKit recording.

RPPreviewViewControllerDelegate

The view controller protocol for previewing and editing a ReplayKit recording.

RPPreviewViewControllerDelegate_Extensions

Extension methods to the IRPPreviewViewControllerDelegate interface to support all the methods from the RPPreviewViewControllerDelegate protocol.

RPRecordingErrorExtensions

Extension methods for the ReplayKit.RPRecordingError enumeration.

RPScreenRecorder

Enables the user to record visual and audio output of applications, with simultaneous recorded audio (screencasts).

RPScreenRecorderDelegate

Protocol for enabling the user to record visual and audio output of applications, with simultaneous recorded audio (screencasts)..

RPScreenRecorderDelegate_Extensions

Extension methods to the IRPScreenRecorderDelegate interface to support all the methods from the RPScreenRecorderDelegate protocol.

RPSystemBroadcastPickerView
RPSystemBroadcastPickerView.RPSystemBroadcastPickerViewAppearance

Appearance class for objects of type RPSystemBroadcastPickerView.

Interfaces

IRPBroadcastActivityViewControllerDelegate

Interface representing the required methods (if any) of the protocol RPBroadcastActivityViewControllerDelegate.

IRPBroadcastControllerDelegate

Interface representing the required methods (if any) of the protocol RPBroadcastControllerDelegate.

IRPPreviewViewControllerDelegate

Interface representing the required methods (if any) of the protocol RPPreviewViewControllerDelegate.

IRPScreenRecorderDelegate

Interface representing the required methods (if any) of the protocol RPScreenRecorderDelegate.

Enums

RPCameraPosition

Enumerates camera locations on the device.

RPRecordingError

Enumerates errors that can be encountered while recording.

RPSampleBufferType

Delegates

LoadBroadcastingHandler

Delegate that specifies the signature of the completion handler in calls to the LoadBroadcastingApplicationInfo(NSExtensionContext, LoadBroadcastingHandler) method.

Remarks

The ReplayKit namespace provides classes that allows screen recording of the developer's application. Additionally, it provides a standard RPPreviewViewController view controller that allows the user to preview, trim, and share the recording.

Developers must use the SharedRecorder singleton to create replays.

if (RPScreenRecorder.SharedRecorder.Available)
{
    recordingTask = RPScreenRecorder.SharedRecorder.StartRecordingAsync(true);
}
//...etc...
RPPreviewViewController controller = await RPScreenRecorder.SharedRecorder.StopRecordingAsync();
this.NavigationController.PushViewController(controller, true);