2010-10-01 8 views
0

Je pense que je devrais le savoir, mais mon esprit est devenu vide. Je fais une application qui a quelques centaines de petits fichiers son et je veux qu'elle joue un certain fichier dépendant d'une chaîne que je passe à la fonction. Où je frappe le mur de briques obtient la résolution du fichier sonore.Lecture de plusieurs fichiers audio sous Android

J'utilise ce code:

MediaPlayer mp = MediaPlayer.create(context, R.raw.sound_file_1); 
mp.start(); 

Gotten d'ici: http://developer.android.com/guide/topics/media/index.html

Tout ce que je besoin est un peu d'aide dans une passe résid variable. Quelqu'un peut-il me donner un coup de main?

Répondre

1

Utilisez getResources().getIdentifier() pour convertir le String en ID de ressource. Veuillez mettre en cache le résultat, car cette recherche est faite en utilisant la réflexion et est donc un peu chère en termes de CPU.

+0

Merci pour la réponse. J'ai essayé d'utiliser cette méthode (pas sûr de savoir si c'était correct). Merci de m'avoir indiqué la bonne direction. Savez-vous comment je peux accéder au dossier Res? J'ai essayé avec et sans nom de paquet mais je n'ai pas eu de chance. Merci encore – NotACleverMan

+0

@TehGoose: Je ne sais pas ce que vous entendez par "accéder au dossier Res", désolé. – CommonsWare

+0

Merci. Je l'ai obtenu en utilisant la méthode que vous avez dite. Le problème était que j'avais stocké mon fichier audio dans R.raw, et je ne pouvais pas sembler utiliser le fichier pendant qu'il est là. J'utilisais juste la mauvaise méthode. Merci – NotACleverMan

Questions connexes