Instance Method

setCategory:withOptions:error:

Sets the audio session’s category with the specified options.

Declaration

- (BOOL)setCategory:(AVAudioSessionCategory)category withOptions:(AVAudioSessionCategoryOptions)options error:(NSError * _Nullable *)outError;

Parameters

category

The category to apply to the audio session. See AVAudioSessionCategory for supported category values.

options

A mask of additional options for handling audio. For a list of constants, see AVAudioSessionCategoryOptions

outError

On input, a pointer to an error object. If an error occurs, the pointer is an NSError object that describes the error. If you don’t want error information, pass in nil.

Return Value

YES if the audio session category and options were set successfully; otherwise NO.

Discussion

The audio session’s category defines how you intend to use audio in your app. Typically, you set the category before activating the session. You can also set the category while the session is active, but doing so results in an immediate route change.

You can tailor the behavior of certain categories by specifying a mask of category options. Specifying an unsupported option for the indicated category results in an error. See AVAudioSessionCategoryOptions for category compatibility.

See Also

Configuring the Audio Session

category

The current audio session category.

- setCategory:error:

Sets the audio session’s category.

availableCategories

The audio session categories available on the current device.

AVAudioSessionCategory

Audio session category identifiers.

categoryOptions

The set of options associated with the current audio session category.

AVAudioSessionCategoryOptions

Constants that specify optional audio behaviors.

mode

The current audio session’s mode.

- setMode:error:

Sets the audio session’s mode.

- setCategory:mode:options:error:

Sets the audio session’s category, mode, and options.

availableModes

The audio session modes available on the device.

AVAudioSessionMode

Audio session mode identifiers.

routeSharingPolicy

The current route-sharing policy.

- setCategory:mode:routeSharingPolicy:options:error:

Sets the session category, mode, route-sharing policy, and options.

AVAudioSessionRouteSharingPolicy

Cases that indicate the possible route-sharing policies for an audio session.