I have imported all the songs from my SD card to the list view.And now I want to select any song from that list view and play it in MediaPlayer.
What I have tried:
public class SongFile extends Activity implements AdapterView.OnItemClickListener {
private long id;
private String songtitle;
private String artist;
private ArrayList<songfile> songlist;
private ListView songListView;
private Cursor Musiccursor;
@Override
protected void onStart() {
super.onStart();
songListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView Intent intent = new Intent(getBaseContext(), MusicApp.class);
startActivity(intent);
}
});
}
public void getSongList(){
ContentResolver MusicResolver=getContentResolver();
Uri MusicUri= android.provider.MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
Musiccursor=MusicResolver.query(MusicUri,null,null,null,null);
if (Musiccursor != null && Musiccursor.moveToFirst()) {
int TitleColumn=Musiccursor.getColumnIndex(MediaStore.Audio.Media.TITLE);
int idColumn=Musiccursor.getColumnIndex(MediaStore.Audio.Media._ID);
int artistColumn=Musiccursor.getColumnIndex(MediaStore.Audio.Media.ARTIST);
do{
long thisID=Musiccursor.getLong(idColumn);
String thisTitle=Musiccursor.getString(TitleColumn);
String thisArtist=Musiccursor.getString(artistColumn);
songlist.add(new SongFile(thisID,thisTitle,thisArtist));
}while(Musiccursor.moveToNext());
}
}
@Override
public void onItemClick(AdapterView
}
}
//Player Class
public class MusicApp extends Activity implements View.OnClickListener {
ImageButton btnPlay,btnNext,btnPrev,btnPause;
MediaPlayer Mymedialayer;
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.btnPlay:
Mymedialayer.start();
break;
case R.id.btnPause:
Mymedialayer.pause();
Toast.makeText(getApplicationContext(), "Song is paused", Toast.LENGTH_SHORT).show();
break;
case R.id.btnNext:
break;
case R.id.btnPrev:
break;
}
}