首页 > 代码库 > Android - 通过系统数据库获取SD卡音乐媒体信息
Android - 通过系统数据库获取SD卡音乐媒体信息
当写一些东西(比如音乐播放器)的时候,就需要SD卡的mp3列表了~开始我是使用列文件来着,但是再获取文件的信息(歌手,专辑,图片,时长等。。)很麻烦,所以直接用这个函数了~
1 private void getMusicPaths(){ 2 // 3 // 获取音乐列表 4 // 5 Cursor cursor = getContentResolver().query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null, MediaStore.Audio.Media.DEFAULT_SORT_ORDER); 6 if(cursor.moveToFirst()){ 7 while (!cursor.isAfterLast()) { 8 //歌曲编号 9 //int id = cursor.getInt(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media._ID)); 10 //歌曲标题11 String tilte = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.TITLE)); 12 //歌曲的专辑名:MediaStore.Audio.Media.ALBUM13 //String album = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.ALBUM)); 14 //歌曲的歌手名: MediaStore.Audio.Media.ARTIST15 String artist = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.ARTIST)); 16 //歌曲文件的路径 :MediaStore.Audio.Media.DATA17 String url = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.DATA)); 18 //歌曲的总播放时长 :MediaStore.Audio.Media.DURATION19 //int duration = cursor.getInt(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.DURATION)); 20 //歌曲文件的大小 :MediaStore.Audio.Media.SIZE21 //Long size = cursor.getLong(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.SIZE));22 cursor.moveToNext(); 23 } 24 }25 }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。