Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 20/04/13, 14:20:07
Array

[xs_avatar]
vzk91 vzk91 no está en línea
Miembro del foro
 
Fecha de registro: nov 2012
Mensajes: 199
Modelo de smartphone: OnePlus 6T
Tu operador: Movistar
Obtener URI de recursos en Raw

Hola,

Vereis tengo un problema que no se como afrontarlo y por mas que busco solo encuentro cosas confusas.... Yo tengo en mi aplicación una carpeta /res/raw/ donde almaceno una serie de sonidos en mp3. Estos sonidos los intento reproducir de esta manera, por ejemplo:

Código:
MediaPlayer mp = MediaPlayer.create(Ficha.this, R.raw.Sonido1);
El problema es que el archivo que quiero reproducir necesito pasarselo por una variable, para que la misma función pueda reproducir varios archivos. viendolo en el codigo seria algo asi:

Código:
reproductor("Sonido1");
//reproductor("Sonido2");
//reproductor("Sonido3");

public void reproductor(String nombreSonido){
MediaPlayer mp = MediaPlayer.create(Ficha.this, nombreSonido);
mp.start();
}
Algo asi seria lo que quiero hacer, pero MediaPlayer.create solo acepta como segundo parametro una URI y no se como obtener la uri del archivo que quiera para pasarsela.

un saludo
Responder Con Cita


  #2  
Viejo 20/04/13, 14:23:38
Array

[xs_avatar]
mocelet mocelet no está en línea
Desarrollador
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -

En el ejemplo que dices no es una URI, es un int http://developer.android.com/referen....Context, int)
__________________
El mejor Cuatro en Raya de Android (Hilo en HTCMania, Play Store) ¡Un millón de descargas!
Responder Con Cita
  #3  
Viejo 20/04/13, 14:48:41
Array

[xs_avatar]
vzk91 vzk91 no está en línea
Miembro del foro
 
Fecha de registro: nov 2012
Mensajes: 199
Modelo de smartphone: OnePlus 6T
Tu operador: Movistar
 Cita: Originalmente Escrito por mocelet Ver Mensaje
En el ejemplo que dices no es una URI, es un int http://developer.android.com/referen....Context, int)
Si te fijas, justo debajo del metodo que me has citado, esta la otra forma de usarlo que es la que trato de usar:

public static MediaPlayer create (Context context, Uri uri)
Responder Con Cita
  #4  
Viejo 20/04/13, 14:55:20
Array

[xs_avatar]
mocelet mocelet no está en línea
Desarrollador
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -

Ya, un mismo método puede tener varios parámetros aceptados. La pregunta es para qué quieres usar la Uri si tus sonidos están en el directorio raw y tienes que usar el identificador en cualquier caso.

En vez de String usa int, y te defines unas cuantas variables del tipo:

final static int SONIDO_FULANITO = R.raw.loquesea
final static int SONIDO_PEPITO = R.raw.otro

y así solo tienes que llamar a reproductor(SONIDO_FULANITO)
__________________
El mejor Cuatro en Raya de Android (Hilo en HTCMania, Play Store) ¡Un millón de descargas!
Responder Con Cita
  #5  
Viejo 20/04/13, 15:02:06
Array

[xs_avatar]
vzk91 vzk91 no está en línea
Miembro del foro
 
Fecha de registro: nov 2012
Mensajes: 199
Modelo de smartphone: OnePlus 6T
Tu operador: Movistar
 Cita: Originalmente Escrito por mocelet Ver Mensaje
Ya, un mismo método puede tener varios parámetros aceptados. La pregunta es para qué quieres usar la Uri si tus sonidos están en el directorio raw y tienes que usar el identificador en cualquier caso.

En vez de String usa int, y te defines unas cuantas variables del tipo:

final static int SONIDO_FULANITO = R.raw.loquesea
final static int SONIDO_PEPITO = R.raw.otro

y así solo tienes que llamar a reproductor(SONIDO_FULANITO)

Perfectisimo, ya he logrado solucionarlo de esa manera.... la verdad que unicamente trataba de usar las Uri porque era de lo único que habia encontrado una documentación viable, no habia pensado en usar el resid.

En fin, tema solucionado !! Muchas gracias por la ayuda.

Un saludo
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 05:32:42 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2026 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /