---
title: NSUserActivityDelegate
framework: foundation
role: symbol
role_heading: Protocol
path: foundation/nsuseractivitydelegate
---

# NSUserActivityDelegate

The interface through which a user activity instance notifies its delegate of updates.

## Declaration

```swift
protocol NSUserActivityDelegate : NSObjectProtocol
```

## Overview

Overview An object conforming to the NSUserActivityDelegate protocol works with an NSUserActivity object, which encapsulates the state of a user activity in an application on a particular device and enables the same activity to be continued on another device. For example, a user browsing an article in Safari on a Mac can move to an iOS device where the same webpage automatically opens in Safari with the same scroll position. The user activity delegate is responsible for updating the state of an activity and is also notified when an activity has been continued on another device. The user activity delegate is typically a top-level object in the app—such as a window, view controller, or the app delegate—that manages the activity’s interaction with the app.

## Topics

### Handling streams

- [userActivity(_:didReceive:outputStream:)](foundation/nsuseractivitydelegate/useractivity(_:didreceive:outputstream:).md)

### Managing activity continuation

- [userActivityWasContinued(_:)](foundation/nsuseractivitydelegate/useractivitywascontinued(_:).md)
- [userActivityWillSave(_:)](foundation/nsuseractivitydelegate/useractivitywillsave(_:).md)

## Relationships

### Inherits From

- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Host App Interaction

- [NSUserActivity](foundation/nsuseractivity.md)
