获取SD卡上所有的音乐文件信息
2011-09-24 13:55
253 查看
在系统启动、插拔USB的时候,系统会把SD卡上所有的音乐文件信息保存到数据库,可以使用Content Provider获取到所有信息:
不过这存在一些缺点,我在模拟器上调试的时候,发现获取到的字符串,只要含有中文就是乱码,这可能是因为,音乐文件中相关信息在中国采用的是GBK编码,在英语国家采用的是其他编码造成的。
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; } 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)); } while (cursor.moveToNext()); }
不过这存在一些缺点,我在模拟器上调试的时候,发现获取到的字符串,只要含有中文就是乱码,这可能是因为,音乐文件中相关信息在中国采用的是GBK编码,在英语国家采用的是其他编码造成的。
相关文章推荐
- Android平台中应该如何获取音乐文件的信息
- 【Android开发经验】如何获取媒体库中所有音频文件信息,并在文件增删后及时更新媒体库
- Android平台中应该如何获取音乐文件的信息
- C#获取HTTP路径下的所有文件信息(可以做侦测了)
- Android平台中应该如何获取音乐文件的信息
- python实现批量获取指定文件夹下的所有文件的厂商信息
- Java获取音乐文件艺术家,歌曲名,所属专辑等信息
- 获取SD卡中的音乐文件
- python_批量获取指定文件夹下的所有文件的厂商信息
- Android自学笔记-8-Android数据存储1:文件、SharedPreferences和获取sd卡信息
- Android平台中应该如何获取音乐文件的信息
- 在Autodesk Vault 2014中使用VDF(Vault Development Framework) API获取所有文件的属性信息
- C#递归获取所有目录下的文件信息并生成对应的XML件
- Android平台中应该如何获取音乐文件的信息
- Android中通过MediaStore获取音乐文件信息方法
- Android获取SD卡上所有图片、视频缩略图和音乐专辑封面
- 获取SD卡中的音乐文件
- 获取系统info.plist文件中所有信息
- C#递归获取所有目录下的文件信息并生成对应的XML件
- Android平台中应该如何获取音乐文件的信息