Para mandar un tochazo de fichero de música hay que partirlo en cachitos, formar un flujo
y mandarselo al chip de audio. ¿Como? Con la clase MediaPlayer.
MediaPlayer mediaPlayer = new MediaPlayer();
¿Que fichero tiene que reproducir?¿Como se lo digo?
Con un AssetFileDescriptor
AssetFileDescriptor descriptor = assetManager.openFd("musiquita.ogg");
mediaPlayer.setDataSource(
mediaPlayer.prepare();
Una vez hecho todo esto ya se puede:
reproducir el fichero => mediaPlayer.start();
pausar => mediaPlayer.pause();
continuar => mediaPlayer.resume();
parar => mediaPlayer.stop();
cambiar el volumen => mediaPlayer.setVolume(1, 1); de 1f a 0f
Para comprobar que se ha terminado de reproducir la canción no subscribimos así:
mediaPlayer.setOnCompletionListener(listener);
Y si queremos comprobar como va la reproducción hacemos "polling" :D
(hacer polling tiene otras acepciones pero en este caso no tiene nada de porno)
boolean isPlaying = mediaPlayer.isPlaying();
Finalmente para liberar recursos usaremos:
mediaPlayer.release();
import android.content.res.AssetFileDescriptor;
import android.content.res.AssetManager;
import android.media.AudioManager;
import android.media.MediaPlayer;
y mandarselo al chip de audio. ¿Como? Con la clase MediaPlayer.
MediaPlayer mediaPlayer = new MediaPlayer();
¿Que fichero tiene que reproducir?¿Como se lo digo?
Con un AssetFileDescriptor
AssetFileDescriptor descriptor = assetManager.openFd("musiquita.ogg");
mediaPlayer.setDataSource(
descriptor.getFileDescriptor(),
descriptor.getStartOffset(),
descriptor.getLength());mediaPlayer.prepare();
Una vez hecho todo esto ya se puede:
reproducir el fichero => mediaPlayer.start();
pausar => mediaPlayer.pause();
continuar => mediaPlayer.resume();
parar => mediaPlayer.stop();
cambiar el volumen => mediaPlayer.setVolume(1, 1); de 1f a 0f
Para comprobar que se ha terminado de reproducir la canción no subscribimos así:
mediaPlayer.setOnCompletionListener(listener);
Y si queremos comprobar como va la reproducción hacemos "polling" :D
(hacer polling tiene otras acepciones pero en este caso no tiene nada de porno)
boolean isPlaying = mediaPlayer.isPlaying();
Finalmente para liberar recursos usaremos:
mediaPlayer.release();
import android.content.res.AssetFileDescriptor;
import android.content.res.AssetManager;
import android.media.AudioManager;
import android.media.MediaPlayer;

No hay comentarios:
Publicar un comentario