码迷,mamicode.com
首页 > 移动开发 > 详细

手机影音10--音乐列表

时间:2016-11-18 21:28:24      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:new t   消息   read   gets   动态   over   .com   []   技术   

技术分享

/**
 * 从本地的sdcard得到数据
 * //1.遍历sdcard,后缀名
 * //2.从内容提供者里面获取视频
 * //3.如果是6.0的系统,动态获取读取sdcard的权限
 */
private void getDataFromLocal() {
	new Thread(){
		@Override
		public void run() {
			super.run();
//                isGrantExternalRW((Activity) context);
//                SystemClock.sleep(2000);
			mediaItems = new ArrayList<>();
			ContentResolver resolver = context.getContentResolver();
			Uri uri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
			String[] objs = {
					MediaStore.Audio.Media.DISPLAY_NAME,//视频文件在sdcard的名称
					MediaStore.Audio.Media.DURATION,//视频总时长
					MediaStore.Audio.Media.SIZE,//视频的文件大小
					MediaStore.Audio.Media.DATA,//视频的绝对地址
					MediaStore.Audio.Media.ARTIST,//歌曲的演唱者
			};
			Cursor cursor = resolver.query(uri, objs, null, null, null);
			if(cursor != null){
				while (cursor.moveToNext()){

					MediaItem mediaItem = new MediaItem();

					mediaItems.add(mediaItem);//写在上面

					String name = cursor.getString(0);//视频的名称
					mediaItem.setName(name);

					long duration = cursor.getLong(1);//视频的时长
					mediaItem.setDuration(duration);

					long size = cursor.getLong(2);//视频的文件大小
					mediaItem.setSize(size);

					String data = cursor.getString(3);//视频的播放地址
					mediaItem.setData(data);

					String artist = cursor.getString(4);//艺术家
					mediaItem.setArtist(artist);
				}
				cursor.close();
			}
			//Handler发消息
			handler.sendEmptyMessage(10);
		}
	}.start();
}

  

手机影音10--音乐列表

标签:new t   消息   read   gets   动态   over   .com   []   技术   

原文地址:http://www.cnblogs.com/ganchuanpu/p/6078718.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!