Estoy teniendo problemas para usar el objeto MediaPlayer y no tengo mucho éxito. Si agrego un activo de sonido a mi carpeta sin formato y lo llamo usando el valor int dentro de R, funciona bien. Pero quiero poder sacar cosas de la url.MediaPlayer.setDataSource() y prepare() no funciona - android
De acuerdo con toda la documentación que he leído setDataSource() debería aceptar un parámetro de cadena con una url en un archivo.
Sigo recibiendo una excepción IO en la instrucción prepare(). Incluso intenté copiar el archivo de forma local y aún no hay dados.
¿Alguien tiene alguna idea?
MediaPlayer mp = new MediaPlayer();
try {
mp.setDataSource("http://www.urltofile.com/file.mp3");
mp.prepare();
mp.start();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
Funciona muy bien con URL externas (por ejemplo, "http://google.com/") pero arroja una excepción al probar activos locales (por ejemplo, "file: //android_asset/sound.mp3") :( – richtaur
@richtaur ¿Qué hace que uses los recursos de Android en lugar de los recursos regulares? MediaPlaye.create (Context context, int resid) debería funcionar muy bien para los archivos de medios internos de la aplicación. –
Simplemente haría que mis cosas estuvieran más organizadas :) La carpeta Resources es lo suficientemente buena. – richtaur