<!--
{
  "availability" : [
    "iOS: 15.0.0 -",
    "iPadOS: 15.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "FamilyControls",
  "identifier" : "/documentation/FamilyControls/FamilyActivitySelection",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "Family Controls"
    ],
    "preciseIdentifier" : "s:14FamilyControls0A17ActivitySelectionV"
  },
  "title" : "FamilyActivitySelection"
}
-->

# FamilyActivitySelection

A collection of applications, categories, and web domains selected by the user.

```
struct FamilyActivitySelection
```

## Overview

To protect the user’s privacy, `FamilyActivitySelection`
holds opaque values that represent categories, applications, and web domains
selected by the user.

You can then pass these opaque values to instances and methods
from the <doc://com.apple.documentation/documentation/ManagedSettings>
and <doc://com.apple.documentation/documentation/DeviceActivity> frameworks
to set up and manage parental controls.

> Important: If a user, parent, or guardian revokes authorization of your app,
> any tokens that ``doc://com.apple.FamilyControls/documentation/FamilyControls/FamilyActivitySelection`` provided while your app
> was authorized are voided.

For more information on prompting the user to select items, see [`FamilyActivityPicker`](/documentation/FamilyControls/FamilyActivityPicker).

## Topics

### Accessing selected categories

[`categories`](/documentation/FamilyControls/FamilyActivitySelection/categories)

A set of category instances selected by the user.

[`categoryTokens`](/documentation/FamilyControls/FamilyActivitySelection/categoryTokens)

Tokens that represent categories selected by the user.

[`init(includeEntireCategory:)`](/documentation/FamilyControls/FamilyActivitySelection/init(includeEntireCategory:))

Creates a new activity selection instance.

### Accessing selected applications

[`applications`](/documentation/FamilyControls/FamilyActivitySelection/applications)

A set of application instances selected by the user.

[`applicationTokens`](/documentation/FamilyControls/FamilyActivitySelection/applicationTokens)

Tokens that represent applications selected by the user.

### Accessing selected web domains

[`webDomains`](/documentation/FamilyControls/FamilyActivitySelection/webDomains)

A set of web domain instances selected by the user.

[`webDomainTokens`](/documentation/FamilyControls/FamilyActivitySelection/webDomainTokens)

Tokens that represent web domains selected by the user.

### Creating activity selections

[`init()`](/documentation/FamilyControls/FamilyActivitySelection/init())

Creates a new activity selection instance.

### Comparing activity selections

[`includeEntireCategory`](/documentation/FamilyControls/FamilyActivitySelection/includeEntireCategory)

A Boolean value that indicates whether the selection should include applications and web domains from the selected categories.

## Relationships

### Conforms To

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

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

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

---

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)