本地音乐播放器MediaPlayer获取所有歌曲信息,getContentResolver()

 
SimpleAdapter adapter = new SimpleAdapter(this, music_name,
				R.layout.list, new String[] { "name", "time" }, new int[] {
						R.id.musicName, R.id.musicTime });
		lv.setAdapter(adapter);
		lv.setOnItemClickListener(new OnItemClickListener() {

			@Override
			public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
					long arg3) {
				music_count = arg2;
				HashMap path = (HashMap) music_name.get(arg2);
				String abc = (String) path.get("data");
				C_time = (Long) path.get("time1");
				binder.next(abc);
			}
		});

		Cursor cursor = getContentResolver()
				.query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
						new String[] { MediaStore.Audio.Media.TITLE,
								MediaStore.Audio.Media.DURATION,
								MediaStore.Audio.Media.ALBUM,
								MediaStore.Audio.Media.ARTIST,
								MediaStore.Audio.Media._ID,
								MediaStore.Audio.Media.DATA,
								MediaStore.Audio.Media.DISPLAY_NAME }, null,
						null, null);
//		↑↑↑↑↑↑↑ 0信息歌曲名,1时间2专辑名3歌手4ID 5路径6显示全部名字 可以区分什么格式比如.mp3 .wma
//		↓↓↓↓↓↓↓ 遍历cursor  把数据放如一个ArrayList里面,之后把该list放到adapter里面就可以显示了
		if (cursor != null && cursor.moveToFirst()) {
			do {
				String mName = cursor.getString(0);
				long mTime = cursor.getLong(1);
				String mAlbum = cursor.getString(2);
				String mArtist = cursor.getString(3);
				long mId = cursor.getLong(4);
				String mData = cursor.getString(5);
				HashMap a = new HashMap();
				a.put("name", mName);
				a.put("time", refreshTotalTime(mTime));
				a.put("time1", mTime);
				a.put("album", mAlbum);
				a.put("artist", mArtist);
				a.put("id", mId);
				a.put("data", mData);
				music_name.add(a);//ArrayList
				System.out.println(mName + "-->" + mTime + "---->>--" + mData);
			} while (cursor.moveToNext());
		}
		if (!cursor.isClosed()) {
			cursor.close();
		}

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值