获取手机的音频文件展示并播放

来源:互联网 发布:淘宝订单查询接口 编辑:程序博客网 时间:2024/06/03 01:35

获取手机的音频文件展示在ListView 点击一个播放一个

/** * 获取手机上的所有音乐点击开始播放 */public class MainActivity extends AppCompatActivity {    private ListView listView;    // 获取外部存储的 音频文件 也可以 修改为 视频 Vedio 或内部存储    private Uri mediaUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;    private SimpleCursorAdapter adapter;    private MediaPlayer mPlayer;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        listView = (ListView) findViewById(R.id.lv);//        mPlayer = new MediaPlayer();        ContentResolver resolver = getContentResolver();        Cursor cursor = resolver.query(mediaUri,                new String[] { MediaStore.Video.Media._ID, MediaStore.Video.Media.DISPLAY_NAME, MediaStore.Video.Media.DATA, MediaStore.Video.Media.TITLE }, null, null, null);        adapter = new SimpleCursorAdapter(MainActivity.this, R.layout.item_layout, cursor,                new String[] { MediaStore.Video.Media.DISPLAY_NAME, MediaStore.Video.Media.DATA, MediaStore.Video.Media.TITLE },                new int[] { R.id.diaplayname_tv, R.id.data_tv, R.id.title_tv },                CursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER);        listView.setAdapter(adapter);        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {            @Override            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {                // TODO Auto-generated method stub                Cursor c = (Cursor) adapter.getItem(position);                String path = c.getString(c.getColumnIndex(MediaStore.Video.Media.DATA));                // 系统播放音频文件//                Intent intent = new Intent();//                intent.setAction(Intent.ACTION_VIEW);//                intent.setDataAndType(Uri.fromFile(new File(path)), "audio/*");//                startActivity(intent);                if(mPlayer!=null){                     mPlayer.release();//释放资源                }                mPlayer = MediaPlayer.create(MainActivity.this,Uri.parse(path));                mPlayer.start();            }        });    }}