Simple mediaplayer reproducir mp3 desde la ruta del archivo?

Tengo un mediaplayer muy simple que juega en segundo plano. Llama al archivo desde la aplicación, pero quiero que se reproduzca desde cualquier directorio como música o tarjeta sd.

Aquí están mis códigos:

private MediaPlayer mpintro; . . mpintro = MediaPlayer.create(this, R.raw.intro); mpintro.setLooping(true); mpintro.start(); 

Funciona así:

 mpintro = MediaPlayer.create(this, Uri.parse(Environment.getExternalStorageDirectory().getPath()+ "/Music/intro.mp3")); mpintro.setLooping(true); mpintro.start(); 

No funcionó correctamente como ruta de archivo de cadena …

 String filePath = Environment.getExternalStorageDirectory()+"/yourfolderNAme/yopurfile.mp3"; mediaPlayer = new MediaPlayer(); mediaPlayer.setDataSource(filePath); mediaPlayer.prepare(); mediaPlayer.start() 

y esta jugada desde la carpeta sin formato.

 int resID = myContext.getResources().getIdentifier(playSoundName,"raw",myContext.getPackageName()); MediaPlayer mediaPlayer = MediaPlayer.create(myContext,resID); mediaPlayer.prepare(); mediaPlayer.start(); 

mycontext = application.this. utilizar.

Aquí está el código para configurar un MediaPlayer para jugar fuera de la tarjeta SD:

 String PATH_TO_FILE = "/sdcard/music.mp3"; mediaPlayer = new MediaPlayer(); mediaPlayer.setDataSource(PATH_TO_FILE); mediaPlayer.prepare(); mediaPlayer.start() 

Puedes ver el ejemplo completo aquí . Hasme saber si tienes algunos problemas.

Usa el siguiente código para mí.

 MediaPlayer mp = new MediaPlayer(); mp.setDataSource("/mnt/sdcard/yourdirectory/youraudiofile.mp3"); mp.prepare(); mp.start(); 

Yo uso esta clase para la reproducción de audio. Si su ubicación de audio es una carpeta sin formato.

Método de llamada para jugar:

 new AudioPlayer().play(mContext, getResources().getIdentifier(alphabetItemList.get(mPosition) .getDetail().get(0).getAudio(),"raw", getPackageName())); 

Clase AudioPlayer.java:

 public class AudioPlayer { private MediaPlayer mMediaPlayer; public void stop() { if (mMediaPlayer != null) { mMediaPlayer.release(); mMediaPlayer = null; } } // mothod for raw folder (R.raw.fileName) public void play(Context context, int rid){ stop(); mMediaPlayer = MediaPlayer.create(context, rid); mMediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { @Override public void onCompletion(MediaPlayer mediaPlayer) { stop(); } }); mMediaPlayer.start(); } // mothod for other folder public void play(Context context, String name) { stop(); //mMediaPlayer = MediaPlayer.create(c, rid); mMediaPlayer = MediaPlayer.create(context, Uri.parse("android.resource://"+ context.getPackageName()+"/your_file/"+name+".mp3")); mMediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { @Override public void onCompletion(MediaPlayer mediaPlayer) { stop(); } }); mMediaPlayer.start(); } }