Added in API level 1

AsyncPlayer

open class AsyncPlayer
kotlin.Any
   ↳ android.media.AsyncPlayer

Plays a series of audio URIs, but does all the hard work on another thread so that any slowness with preparing or loading doesn't block the calling thread.

Summary

Public constructors

Construct an AsyncPlayer object.

Public methods
open Unit
play(context: Context!, uri: Uri!, looping: Boolean, stream: Int)

Start playing the sound.

open Unit
play(context: Context, uri: Uri, looping: Boolean, attributes: AudioAttributes)

Start playing the sound.

open Unit

Stop a previously played sound.

Public constructors

AsyncPlayer

Added in API level 1
AsyncPlayer(tag: String!)

Construct an AsyncPlayer object.

Parameters
tag String!: a string to use for debugging

Public methods

play

Added in API level 1
Deprecated in API level 23
open fun play(
    context: Context!,
    uri: Uri!,
    looping: Boolean,
    stream: Int
): Unit

Deprecated: use play(android.content.Context,android.net.Uri,boolean,android.media.AudioAttributes) instead

Start playing the sound. It will actually start playing at some point in the future. There are no guarantees about latency here. Calling this before another audio file is done playing will stop that one and start the new one.

Parameters
context Context!: Your application's context.
uri Uri!: The URI to play. (see MediaPlayer#setDataSource(Context, Uri))
looping Boolean: Whether the audio should loop forever. (see MediaPlayer#setLooping(boolean))
stream Int: the AudioStream to use. (see MediaPlayer#setAudioStreamType(int))

play

Added in API level 23
open fun play(
    context: Context,
    uri: Uri,
    looping: Boolean,
    attributes: AudioAttributes
): Unit

Start playing the sound. It will actually start playing at some point in the future. There are no guarantees about latency here. Calling this before another audio file is done playing will stop that one and start the new one.

Parameters
context Context: the non-null application's context.
uri Uri: the non-null URI to play. (see MediaPlayer#setDataSource(Context, Uri))
looping Boolean: whether the audio should loop forever. (see MediaPlayer#setLooping(boolean))
attributes AudioAttributes: the non-null AudioAttributes to use. (see MediaPlayer#setAudioAttributes(AudioAttributes))
Exceptions
java.lang.IllegalArgumentException

stop

Added in API level 1
open fun stop(): Unit

Stop a previously played sound. It can't be played again or unpaused at this point. Calling this multiple times has no ill effects.