Cómo crear un reproductor de música en Android Studio

3
5853
tutoriales android studio

En este tutorial veremos cómo crear un reproductor de música en Android Studio. Si te gusta la música y tienes pensado crear una aplicación de música para Android, como esta nuestra de Cánticos del Atlético de Madrid, te contaremos más o menos lo que necesitas para llevarlo a cabo. Así podrás reproducir audio en Android Studio, implementando los controladores de play y pause.

Esta aplicación se hace bastante rápido, más de lo que crees:

Cómo crear un reproductor de música en Android Studio

aplicacion canticos atleti

  • Lo primero que necesitas es crear una lista. Puedes implementar los botones de play y pause en la propia lista (que sea el mismo botón y se cambie). O que al hacer clic en la canción, se abra un nuevo layout con la letra y los botones de play/plause. En el anterior tutorial te contamos cómo crear la lista.
  • Necesitas crear una carpeta raw con los .mp3. La puedes crear a la altura de las carpetas menú y values.
  • El segundo paso importante es implementar los botones de play/pause. Aquí te contamos cómo crear botones en Android Studio, aunque lo haremos con un custom view y ayuda de otra app.

Reproducir audio en Android Studio

El código que necesitas para hacer las funciones de play/pause, es el siguiente:

Código play/pause

  • Necesitas declarar la variable MediaPlayer:

  • Luego crear el método Play por ejemplo (lo llamarás como buttonPlay(); desde onCreate()):
Te recomiendo:  Solución: Android Studio no reconoce mi móvil

  • Necesitarás la clase PlayPauseView:
Te recomiendo:  Cómo actualizar Android Studio

Encuéntrala en GitHub.

  • Necesitarás esto en tu clase (si cierras la app, que deje de sonar):

  • Necesitarás un botón custom view en tu layout:

Este botón cambiará de play a pause y viceversa. Podrás darle formato.

¡Y creo que ya está todo! Este código lo hice hace tiempo y es posible que me haya comido algún paso.

Con este código,lo que hago es tener 2 botones en la app (play y pause). Cuando haces clic en play, pasará a pause y se escuchará la música y viceversa. Hay una animación en los botones para que pase de play a pause.

Puedes ver la app creada en este enlace: Cánticos Atleti

google play

Debería servirte para crear un reproductor de música en Android Studio.

¿Tienes dudas? ¿No sabes cómo implementar alguna de las partes? Pregúntame en los comentarios.

3 Comentarios

  1. Hola quisiera por favor q me ayudaras en como hacer la animavion para los botones de play y stop para una app de radio streaming en android studio. Este es mi codigo java
    public class MainActivity extends Activity { static MediaPlayer mPlayer; Button buttonPlay; Button buttonStop; String url = “http://s39.myradiostream.com:4682/”; private MediaPlayer mMediaPlayer; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); buttonPlay = (Button) findViewById(R.id.BtnPlay); buttonPlay.setOnClickListener(new OnClickListener() { public void onClick(View v) { mPlayer = new MediaPlayer(); mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); try { mPlayer.setDataSource(url); } catch (IllegalArgumentException e) { Toast.makeText(getApplicationContext(), “Emisora fuera del Aire!!”, Toast.LENGTH_LONG).show(); } catch (SecurityException e) { Toast.makeText(getApplicationContext(), “Emisora fuera del Aire!!”, Toast.LENGTH_LONG).show(); } catch (IllegalStateException e) { Toast.makeText(getApplicationContext(), “Emisora fuera del Aire!!”, Toast.LENGTH_LONG).show(); } catch (IOException e) { e.printStackTrace(); } try { mPlayer.prepare(); } catch (IllegalStateException e) { Toast.makeText(getApplicationContext(), “Emisora fuera del Aire!!”, Toast.LENGTH_LONG).show(); } catch (IOException e) { Toast.makeText(getApplicationContext(), “Emisora fuera del Aire!!”, Toast.LENGTH_LONG).show(); } mPlayer.start(); } }); buttonStop = (Button) findViewById(R.id.BtnStop); buttonStop.setOnClickListener(new OnClickListener() { public void onClick(View v) { // TODO Auto-generated method stub if (mPlayer != null && mPlayer.isPlaying()) { mPlayer.stop(); } } }); } protected void onDestroy() { super.onDestroy(); // TODO Auto-generated method stub if (mPlayer != null) { mPlayer.release(); mPlayer = null; } } public void onPressed() { moveTaskToBack(true); }}

  2. Hola, disculpa no se si me puedes ayudar debo hacer para un proyecto de la U un reproductor por streaming, pero tengo problemas para que la al acabar una canción automáticamente reproduzca la siguiente. Ojala puedas ayudarme. Saludos y gracias…

    • Hola! No es nada complicado. Simplemente tendrías que cambiar la acción. En muchos casos, cuando en un reproductor de música se acaba una canción no hace nada. Pues tendrás que meter un código que saltara el siguiente ID y lo reprodujera. ¿Cómo lo tienes implementado?

Dejar respuesta

Please enter your comment!
Please enter your name here