Android APIs
public class

AsyncPlayer

extends Object
java.lang.Object
   ↳ android.media.AsyncPlayer

Class Overview

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
AsyncPlayer(String tag)
Construct an AsyncPlayer object.
Public Methods
void play(Context context, Uri uri, boolean looping, int stream)
This method was deprecated in API level 23. use play(Context, Uri, boolean, AudioAttributes) instead
void play(Context context, Uri uri, boolean looping, AudioAttributes attributes)
Start playing the sound.
void stop()
Stop a previously played sound.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public AsyncPlayer (String tag)

Added in API level 1

Construct an AsyncPlayer object.

Parameters
tag a string to use for debugging

Public Methods

public void play (Context context, Uri uri, boolean looping, int stream)

Added in API level 1

This method was deprecated in API level 23.
use play(Context, Uri, boolean, 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 Your application's context.
uri The URI to play. (see setDataSource(Context, Uri))
looping Whether the audio should loop forever. (see setLooping(boolean))
stream the AudioStream to use. (see setAudioStreamType(int))

public void play (Context context, Uri uri, boolean looping, AudioAttributes attributes)

Added in API level 23

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 the non-null application's context.
uri the non-null URI to play. (see setDataSource(Context, Uri))
looping whether the audio should loop forever. (see setLooping(boolean))
attributes the non-null AudioAttributes to use. (see setAudioAttributes(AudioAttributes))

public void stop ()

Added in API level 1

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