Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.range.mediafail;
- import android.app.Activity;
- import android.content.Context;
- import android.database.Cursor;
- import android.media.MediaPlayer;
- import android.os.Bundle;
- import android.os.Handler;
- import android.os.Message;
- import android.provider.MediaStore;
- import android.view.Menu;
- import android.view.MenuInflater;
- import android.view.MenuItem;
- import android.view.View;
- import android.view.ViewGroup;
- import android.widget.AdapterView;
- import android.widget.AdapterView.OnItemClickListener;
- import android.widget.BaseAdapter;
- import android.widget.ListView;
- import android.widget.SeekBar;
- import android.widget.TextView;
- @SuppressWarnings("unused")
- public class speel extends Activity implements Runnable {
- ListView musiclist;
- ListView ListList;
- Cursor musiccursor;
- Cursor listcursor;
- int music_column_index;
- int list_column_index;
- int count;
- int listcount;
- MediaPlayer mp;
- private SeekBar progress;
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- // progress = (SeekBar) findViewById(R.id.seekbar);
- setContentView(R.layout.main);
- init_phone_music_grid();
- }
- private void init_phone_music_grid() {
- System.gc();
- String[] proj = { MediaStore.Audio.Media._ID,
- MediaStore.Audio.Media.DATA,
- MediaStore.Audio.Media.DISPLAY_NAME,
- MediaStore.Video.Media.SIZE,
- MediaStore.Audio.Media.ARTIST,
- MediaStore.Audio.Media.TITLE};
- musiccursor = managedQuery(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
- proj, null, null, null);
- count = musiccursor.getCount();
- musiclist = (ListView) findViewById(R.id.PhoneMusicList);
- musiclist.setAdapter(new MusicAdapter(getApplicationContext()));
- musiclist.setOnItemClickListener(musicgridlistener);
- mp = new MediaPlayer();
- }
- private OnItemClickListener musicgridlistener = new OnItemClickListener() {
- @SuppressWarnings("rawtypes")
- public void onItemClick(AdapterView parent, View v, int position, long id) {
- System.gc();
- music_column_index = musiccursor.getColumnIndexOrThrow(MediaStore.Audio.Media.DATA);
- musiccursor.moveToPosition(position);
- String filename = musiccursor.getString(music_column_index);
- try {
- if (mp.isPlaying()) {
- mp.reset();
- }
- mp.setDataSource(filename);
- mp.prepare();
- mp.start();
- } catch (Exception e) {
- }
- }
- };
- private OnItemClickListener listgridlistener = new OnItemClickListener() {
- @SuppressWarnings("rawtypes")
- public void onItemClick(AdapterView parent, View v, int position, long id) {
- String ID = "1";
- Cursor musiccursor = getPlaylists (ID);
- count = musiccursor.getCount();
- musiclist = (ListView) findViewById(R.id.PhoneMusicList);
- musiclist.setAdapter(new MusicAdapter(getApplicationContext()));
- musiclist.setOnItemClickListener(musicgridlistener);
- setContentView(R.layout.main);
- }
- };
- public class ListAdapter extends BaseAdapter {
- private Context mContext;
- public ListAdapter(Context c) {
- mContext = c;
- }
- public int getCount() {
- return listcount;
- }
- public Object getItem(int position) {
- return position;
- }
- public long getItemId(int position) {
- return position;
- }
- public View getView(int position, View convertView, ViewGroup parent) {
- System.gc();
- TextView tv = new TextView(mContext.getApplicationContext());
- String id = null;
- if (convertView == null) {
- list_column_index = listcursor.getColumnIndexOrThrow(MediaStore.Audio.Playlists.NAME);
- listcursor.moveToPosition(position);
- id = listcursor.getString(list_column_index);
- list_column_index = listcursor.getColumnIndexOrThrow(MediaStore.Audio.Playlists._ID);
- listcursor.moveToPosition(position);
- id += " - " + listcursor.getString(list_column_index);
- tv.setText(id);
- } else
- tv = (TextView) convertView;
- return tv;
- }
- }
- public class MusicAdapter extends BaseAdapter {
- private Context mContext;
- public MusicAdapter(Context c) {
- mContext = c;
- }
- public int getCount() {
- return count;
- }
- public Object getItem(int position) {
- return position;
- }
- public long getItemId(int position) {
- return position;
- }
- public View getView(int position, View convertView, ViewGroup parent) {
- System.gc();
- TextView tv = new TextView(mContext.getApplicationContext());
- String id = null;
- if (convertView == null) {
- music_column_index = musiccursor.getColumnIndexOrThrow(MediaStore.Audio.Media.ARTIST);
- musiccursor.moveToPosition(position);
- id = musiccursor.getString(music_column_index);
- music_column_index = musiccursor.getColumnIndexOrThrow(MediaStore.Audio.Media.TITLE);
- musiccursor.moveToPosition(position);
- id += " - " + musiccursor.getString(music_column_index);
- tv.setText(id);
- } else
- tv = (TextView) convertView;
- return tv;
- }
- }
- @Override
- public void run() {
- // TODO Auto-generated method stub
- try {
- while(mp != null){
- int currentPosition = mp.getCurrentPosition();
- Message msg = new Message();
- msg.what = currentPosition;
- threadHandler.sendMessage(msg);
- }
- Thread.sleep(100);
- } catch (InterruptedException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- private Handler threadHandler = new Handler(){
- public void handleMessage(Message msg){
- //super.handleMessage(msg);
- //txt.setText(Integer.toString(msg.what));
- progress.setProgress(msg.what);
- }
- };
- public void play (View view) {
- if (mp.isPlaying ()) {
- mp.pause();
- }
- else {
- mp.start();
- }
- }
- public void stop (View view) {
- mp.stop();
- }
- private Cursor getPlaylists(String playlistId){
- Cursor cursor = null;
- String[] projection1 = {
- MediaStore.Audio.Playlists._ID,
- MediaStore.Audio.Playlists.NAME
- };
- cursor = this.managedQuery(
- MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI,
- projection1,
- MediaStore.Audio.Playlists._ID+ " = "+playlistId+"",
- null, null);
- startManagingCursor(cursor);
- cursor.moveToFirst();
- Long playlist_id2 = cursor.getLong(0);
- if(playlist_id2 > 0){
- String[] projection = {
- MediaStore.Audio.Playlists.Members.AUDIO_ID,
- MediaStore.Audio.Playlists.Members.ARTIST,
- MediaStore.Audio.Playlists.Members.TITLE,
- MediaStore.Audio.Playlists.Members._ID
- };
- cursor = null;
- cursor = this.managedQuery(
- MediaStore.Audio.Playlists.Members.getContentUri("external",playlist_id2 ),
- projection,
- MediaStore.Audio.Media.IS_MUSIC +" != 0 ",
- null, null);
- }
- return cursor;
- }
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- MenuInflater inflater = getMenuInflater();
- inflater.inflate(R.menu.menu, menu);
- return true;
- }
- public void listsCursor () {
- String[] projection1 = {
- MediaStore.Audio.Playlists._ID,
- MediaStore.Audio.Playlists.NAME
- };
- listcursor = this.managedQuery(
- MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI,
- projection1,
- null,
- null, null);
- startManagingCursor(listcursor);
- listcursor.moveToFirst();
- }
- @Override
- public boolean onOptionsItemSelected(MenuItem playlists) {
- setContentView(R.layout.lijsten);
- System.gc();
- String[] proj = { MediaStore.Audio.Playlists._ID,
- MediaStore.Audio.Playlists.NAME};
- listcursor = managedQuery(MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI,
- proj, null, null, null);
- listcount = listcursor.getCount();
- ListList = (ListView) findViewById(R.id.PlayListList);
- ListList.setAdapter(new ListAdapter(getApplicationContext()));
- ListList.setOnItemClickListener(listgridlistener);
- return super.onOptionsItemSelected(playlists);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement