---
title: Preferences Utilities
framework: corefoundation
role: collectionGroup
role_heading: API Collection
path: corefoundation/preferences-utilities
---

# Preferences Utilities

## Overview

Overview Several functions return a preference value as a Core Foundation property list object. You can use the function CFGetTypeID(_:) to determine the value’s type. For more information about property lists, see Property List Programming Topics for Core Foundation. Overview Core Foundation provides a simple, standard way to manage user (and application) preferences. Core Foundation stores preferences as key-value pairs that are assigned a scope using a combination of user name, application ID, and host (computer) names. This makes it possible to save and retrieve preferences that apply to different classes of users. Core Foundation preferences is useful to all applications that support user preferences. Note that modification of some preferences domains (those not belonging to the “Current User”) requires root privileges (or Admin privileges prior to OS X v10.6)—see Authorization Services Programming Guide for information on how to gain suitable privileges. Unlike some other Core Foundation types, CFPreferences is not toll-free bridged to its corresponding Cocoa Foundation framework class (NSUserDefaults). CFPreferences is thread-safe.

## Topics

### Getting Preference Values

- [CFPreferencesCopyAppValue(_:_:)](corefoundation/cfpreferencescopyappvalue(_:_:).md)
- [CFPreferencesCopyKeyList(_:_:_:)](corefoundation/cfpreferencescopykeylist(_:_:_:).md)
- [CFPreferencesCopyMultiple(_:_:_:_:)](corefoundation/cfpreferencescopymultiple(_:_:_:_:).md)
- [CFPreferencesCopyValue(_:_:_:_:)](corefoundation/cfpreferencescopyvalue(_:_:_:_:).md)
- [CFPreferencesGetAppBooleanValue(_:_:_:)](corefoundation/cfpreferencesgetappbooleanvalue(_:_:_:).md)
- [CFPreferencesGetAppIntegerValue(_:_:_:)](corefoundation/cfpreferencesgetappintegervalue(_:_:_:).md)

### Setting Preference Values

- [CFPreferencesSetAppValue(_:_:_:)](corefoundation/cfpreferencessetappvalue(_:_:_:).md)
- [CFPreferencesSetMultiple(_:_:_:_:_:)](corefoundation/cfpreferencessetmultiple(_:_:_:_:_:).md)
- [CFPreferencesSetValue(_:_:_:_:_:)](corefoundation/cfpreferencessetvalue(_:_:_:_:_:).md)

### Synchronizing Preferences

- [CFPreferencesAppSynchronize(_:)](corefoundation/cfpreferencesappsynchronize(_:).md)
- [CFPreferencesSynchronize(_:_:_:)](corefoundation/cfpreferencessynchronize(_:_:_:).md)

### Adding and Removing Suite Preferences

- [CFPreferencesAddSuitePreferencesToApp(_:_:)](corefoundation/cfpreferencesaddsuitepreferencestoapp(_:_:).md)
- [CFPreferencesRemoveSuitePreferencesFromApp(_:_:)](corefoundation/cfpreferencesremovesuitepreferencesfromapp(_:_:).md)

### Miscellaneous Functions

- [CFPreferencesAppValueIsForced(_:_:)](corefoundation/cfpreferencesappvalueisforced(_:_:).md)
- [CFPreferencesCopyApplicationList(_:_:)](corefoundation/cfpreferencescopyapplicationlist(_:_:).md)

### Constants

- [Application, Host, and User Keys](corefoundation/application-host-and-user-keys.md)

## See Also

### Related Documentation

- [Preferences Programming Topics for Core Foundation](apple-archive/documentation/CoreFoundation/Conceptual/CFPreferences.md)

### Utilities

- [Base Utilities](corefoundation/base-utilities.md)
- [Byte-Order Utilities](corefoundation/byte-order-utilities.md)
- [Core Foundation URL Access Utilities](corefoundation/core-foundation-url-access-utilities.md)
- [Socket Name Server Utilities](corefoundation/socket-name-server-utilities.md)
- [Time Utilities](corefoundation/time-utilities.md)
