Dude you have placed mP.prepare();
at wrong line
you need to call it after mP.setDataSource(context, uri);
function
and before mp.start();
Also not try to make several instances of MediaPlayer. Make one and use reset() function everytime before start.
Please see this link for more help.