Instance Property

persistentIdentifier

A value used to identify the user activity.

Declaration

var persistentIdentifier: NSUserActivityPersistentIdentifier? { get set }

Discussion

Set this property to a value that identifies the user activity so you can later delete it with deleteSavedUserActivities(withPersistentIdentifiers:completionHandler:). For example, if the user checks the weather for Cupertino each morning from home, the weather app sets the persistent identifier to the city name (Cupertino). When the user deletes Cupertino from the weather app, the app deletes the user activity associated with the identifier, "Cupertino".

Listing 1

Example of setting the persistent identifier to a city name in a fictitious weather app.

let userActivity = NSUserActivity(activityType: WeatherLookup.userActivityType)
userActivity.persistentIdentifier = "Cupertino"

See Also

Accessing Activity Information

var activityType: String

The activity type with which the user activity object was created.

var title: String?

An optional, user-visible title for this activity, such as a document name or web page title.

var requiredUserInfoKeys: Set<String>?

A set of keys that represent the minimal information about the activity that should be stored for later restoration.

var userInfo: [AnyHashable : Any]?

A dictionary containing app-specific state information needed to continue an activity on another device.

func addUserInfoEntries(from: [AnyHashable : Any])

Adds the contents of the specified dictionary to the user info dictionary.

var needsSave: Bool

Indicates that the state of the activity needs to be updated.

var contentAttributeSet: CSSearchableItemAttributeSet?

A set of properties that describe the activity.

var keywords: Set<String>

A set of localized keywords that can help users find the activity in search results.

Beta Software

This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.

Learn more about using Apple's beta software