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
- Cómo transmitir contenido autenticado con MediaPlayer en Android
- ¿Existe una mejor manera de guardar archivos de streaming con MediaPlayer?
- Crear mediaplayer con inputstream en android
- Ecualizador - Biblioteca de efectos no cargada
- ¿Cómo puedo crear un reproductor multimedia personalizado para reproducir un códec personalizado en Android?
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.
- ¿Cuál es la mejor manera de obtener una duración de archivo de audio en Android?
- Reproducción de archivos .wav cortos - Android
- ¿Es posible en Android registrar algo reproducido por MediaPlayer?
- Android Reproducción de archivos de película en un fondo de pantalla en vivo
- Vitamio Media Player Licencias
- MediaPlayer.setDataSource falla en el archivo de audio AMR
- ¿Cómo puedo enviar un archivo pregrabado (wav) durante una llamada de voz?
- Android Cómo obtener información de ID de una sola canción desde un URI conocido
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.
- No puedo crear un emulador en Android AVD Manager
- Llamar a DeleteLocalRef en la interfaz nativa de java