Android多媒体分析-通过MediaStore获取Audio信息

   	public void getAlldata() {
		ContentResolver cr = getApplication().getContentResolver();
		if (cr == null) {
			return;
		}
		// 获取所有歌曲
		Cursor cursor = cr.query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
				null, null, null, MediaStore.Audio.Media.DEFAULT_SORT_ORDER);
		if (null == cursor) {
			return;
		}
		Music music;
		List<Music> list = new ArrayList<MainActivity.Music>();
		if (cursor.moveToFirst()) {
			do {
				
				//歌曲名
				String title = cursor.getString(cursor
						.getColumnIndex(MediaStore.Audio.Media.TITLE));
				
				//歌手
				String singer = cursor.getString(cursor
						.getColumnIndex(MediaStore.Audio.Media.ARTIST));
				
				//专辑
				String album = cursor.getString(cursor
						.getColumnIndex(MediaStore.Audio.Media.ALBUM));
				
				//长度
				long size = cursor.getLong(cursor
						.getColumnIndex(MediaStore.Audio.Media.SIZE));
				
				//时长
				int duration = cursor.getInt(cursor
						.getColumnIndex(MediaStore.Audio.Media.DURATION));
				
				//路径
				String url = cursor.getString(cursor
						.getColumnIndex(MediaStore.Audio.Media.DATA));
				
				//显示的文件名
				String _display_name = cursor.getString(cursor
						.getColumnIndex(MediaStore.Audio.Media.DISPLAY_NAME));
				
				//类型
				String mime_type = cursor.getString(cursor
						.getColumnIndex(MediaStore.Audio.Media.MIME_TYPE));
				music = new Music();
				music.setAlbum(album);
				music.setDuration(duration);
				music.setSinger(singer);
				music.setSize(size);
				music.setTitle(title);
				music.setUrl(url);
				music.set_display_name(_display_name);
				music.setMime_type(mime_type);
				list.add(music);
			} while (cursor.moveToNext());
		}
		System.out.println(list.size());
	}
	class Music
	{
		private  String title;
		private  String singer;
		private  String album;
		private  long size;
		private  int duration;
		private  String url;
		private  String _display_name;
		private String mime_type;
		
		public String get_display_name() {
			return _display_name;
		}
		public void set_display_name(String _display_name) {
			this._display_name = _display_name;
		}
		public String getMime_type() {
			return mime_type;
		}
		public void setMime_type(String mime_type) {
			this.mime_type = mime_type;
		}
		public String getTitle() {
			return title;
		}
		public void setTitle(String title) {
			this.title = title;
		}
		public String getSinger() {
			return singer;
		}
		public void setSinger(String singer) {
			this.singer = singer;
		}
		public String getAlbum() {
			return album;
		}
		public void setAlbum(String album) {
			this.album = album;
		}
		public long getSize() {
			return size;
		}
		public void setSize(long size) {
			this.size = size;
		}
		public int getDuration() {
			return duration;
		}
		public void setDuration(int duration) {
			this.duration = duration;
		}
		public String getUrl() {
			return url;
		}
		public void setUrl(String url) {
			this.url = url;
		}
		@Override
		public String toString() {
			return "Music [title=" + title + ", singer=" + singer + ", album="
					+ album + ", size=" + size + ", duration=" + duration
					+ ", url=" + url + ", _display_name=" + _display_name
					+ ", mime_type=" + mime_type + "]";
		}
		
	}


 

 

 

 

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值