Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Reproducir un archivo de sonido de Internet cuando se hace clic en un botón

Estoy tratando de reproducir un archivo de sonido en el botón de clic, pero mi URL de sonido se forma internet, por ejemplo http://www.example.com/sound.mp3 . ¿Cómo puedo jugar cuando se hace clic en el botón, usando un reproductor de medios.

Ejemplo: Esta es la forma de reproducir el archivo local

b.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { MediaPlayer mp = MediaPlayer.create(this, R.raw.mmmm); mp.start(); } }); 

Quiero reproducir este sonido http://www.example.com/sound.mp3 representar R.raw.mmmm, sin descargar este sonido.

  • ¿Cómo reproducir los archivos de audio directamente de la carpeta res / raw?
  • MediaPlayer.setDataSource provoca IOException para archivo válido
  • Android AudioRecord y MediaRecorder
  • Android reproducir archivos de recursos desde el almacenamiento interno provoca que MediaPlayer.prepare dé IOException
  • Android - QCMediaPlayer mediaplayer NO está presente - no puede reproducir sonido en absoluto
  • Establecer sonido de notificación en la carpeta Activos
  • Java.lang.RuntimeException: No se puede inicializar el motor Visualizer, error: -4
  • Jugar dos sonidos Simutaneosly
  • 2 Solutions collect form web for “Reproducir un archivo de sonido de Internet cuando se hace clic en un botón”

    Media Player tiene una característica de greate en android.You puede manejar todo el evento que occur.So este es el código para reproducir un archivo (Url local o en línea)

     String url = "http://........"; // your URL here MediaPlayer mediaPlayer = new MediaPlayer(); mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); mediaPlayer.setDataSource(url); mediaPlayer.prepareAsync(); //You can show progress dialog here untill it prepared to play mediaPlayer.setOnPreparedListener(new OnPreparedListener() { @Override public void onPrepared(MediaPlayer mp) { //Now dismis progress dialog, Media palyer will start playing mp.start(); } }); mediaPlayer.setOnErrorListener(new OnErrorListener() { @Override public boolean onError(MediaPlayer mp, int what, int extra) { // dissmiss progress bar here. It will come here when MediaPlayer // is not able to play file. You can show error message to user return false; } }); 

    Si desea reproducir este sonido localmente, primero tiene que descargarlo.

    Usted apenas no puede "jugar algo del Internet" pues la máquina que está jugando ese sonido es su máquina local. Necesita tener una copia de la que MP3.

    Después de eso, puede haber formas de empezar a jugar antes de que la descarga finalice, pero habrá una descarga de todos modos.

    EDIT : AndroidDeveloper , en otra respuesta de esa página, le dio información sobre cómo hacer streaming (+1!). Esto corresponde a lo que he dicho anteriormente, por lo que parece que hay una manera de empezar a jugar antes de que la descarga realmente se completa, aunque esta descarga habrá ocurrido al final.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.