SoundPool.Builder

public static class SoundPool.Builder
extends Object

java.lang.Object
   ↳ android.media.SoundPool.Builder


Builder class for SoundPool objects.

Summary

Public constructors

Builder()

Constructs a new Builder with the defaults format values.

Public methods

SoundPool build()
SoundPool.Builder setAudioAttributes(AudioAttributes attributes)

Sets the AudioAttributes.

SoundPool.Builder setAudioSessionId(int sessionId)

Sets the session ID the SoundPool will be attached to.

SoundPool.Builder setContext(Context context)

Sets the context the SoundPool belongs to.

SoundPool.Builder setMaxStreams(int maxStreams)

Sets the maximum of number of simultaneous streams that can be played simultaneously.

Inherited methods

Public constructors

Builder

Added in API level 21
public Builder ()

Constructs a new Builder with the defaults format values. If not provided, the maximum number of streams is 1 (see setMaxStreams(int) to change it), and the audio attributes have a usage value of AudioAttributes#USAGE_MEDIA (see setAudioAttributes(android.media.AudioAttributes) to change them).

Public methods

build

Added in API level 21
public SoundPool build ()

Returns
SoundPool

setAudioAttributes

Added in API level 21
public SoundPool.Builder setAudioAttributes (AudioAttributes attributes)

Sets the AudioAttributes. For examples, game applications will use attributes built with usage information set to AudioAttributes#USAGE_GAME.

Parameters
attributes AudioAttributes: a non-null

Returns
SoundPool.Builder

Throws
IllegalArgumentException

setAudioSessionId

Added in API level 34
public SoundPool.Builder setAudioSessionId (int sessionId)

Sets the session ID the SoundPool will be attached to. Note, that if there's a device specific session id associated with the context (see Builder#setContext(Context)), explicitly setting a session id using this method will override it.

Parameters
sessionId int: a strictly positive ID number retrieved from another player or allocated by AudioManager via AudioManager#generateAudioSessionId(), or AudioManager#AUDIO_SESSION_ID_GENERATE.

Returns
SoundPool.Builder the same Builder instance This value cannot be null.

Throws
IllegalArgumentException when sessionId is invalid.

setContext

Added in API level 34
public SoundPool.Builder setContext (Context context)

Sets the context the SoundPool belongs to. The context will be used to pull information, such as AttributionSource and device specific audio session ids, which will be associated with the SoundPool. However, the context itself will not be retained by the SoundPool instance after initialization.

Parameters
context Context: a non-null Context instance

Returns
SoundPool.Builder the same Builder instance. This value cannot be null.

setMaxStreams

Added in API level 21
public SoundPool.Builder setMaxStreams (int maxStreams)

Sets the maximum of number of simultaneous streams that can be played simultaneously.

Parameters
maxStreams int: a value equal to 1 or greater.

Returns
SoundPool.Builder the same Builder instance

Throws
java.lang.IllegalArgumentException
IllegalArgumentException