---
title: TVUserManager
framework: tvservices
role: symbol
role_heading: Class
path: tvservices/tvusermanager
---

# TVUserManager

An object that indicates how to store preferences for multiple people on a shared device.

## Declaration

```swift
class TVUserManager
```

## Overview

Overview Some apps rely on profiles to maintain separate information for each person who uses a shared device, such as a video content app that retains which shows they watch. To avoid interrupting people with a profile picker each time they launch your app, you can save and retrieve the current user’s selection on a shared device. important: To create a TVUserManager object, add the User Management Entitlement capability to your app or app extension in Xcode, and select the Runs as Current User, Only When User-Independent Keychain is Available option. This enables the system to take care of separating each user’s data for your app. To determine the current user’s profile, first check shouldStorePreferencesForCurrentUser. If that value is false, display the profile picker to determine which profile to use for the current session, but don’t save the selected profile. If the value is true, and there isn’t a saved profile in UserDefaults, display the profile picker and save the selected profile for future use. If the value is true and there’s already a saved profile, skip the prompt and use the saved profile.

## Topics

### Retaining profile selection for the current Apple TV account

- [shouldStorePreferencesForCurrentUser](tvservices/tvusermanager/shouldstorepreferencesforcurrentuser.md)

### Deprecated symbols

- [currentUserIdentifier](tvservices/tvusermanager/currentuseridentifier.md)
- [currentUserIdentifierDidChangeNotification](tvservices/tvusermanager/currentuseridentifierdidchangenotification.md)
- [presentProfilePreferencePanel(currentSettings:availableProfiles:completion:)](tvservices/tvusermanager/presentprofilepreferencepanel(currentsettings:availableprofiles:completion:).md)
- [shouldStorePreferenceForCurrentUser(to:completion:)](tvservices/tvusermanager/shouldstorepreferenceforcurrentuser(to:completion:).md)
- [TVAppProfileDescriptor](tvservices/tvappprofiledescriptor.md)
- [TVUserIdentifier](tvservices/tvuseridentifier.md)
- [userIdentifiersForCurrentProfile](tvservices/tvusermanager/useridentifiersforcurrentprofile.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Multiple users

- [Personalizing Your App for Each User on Apple TV](tvservices/personalizing-your-app-for-each-user-on-apple-tv.md)
- [Supporting Multiple Users in Your tvOS App](tvservices/supporting-multiple-users-in-your-tvos-app.md)
- [Mapping Apple TV users to app profiles](tvservices/mapping-apple-tv-users-to-app-profiles.md)
