Android上怎样实现搜索SD卡上面的所有MP3文件? RT,请教各位大虾~Lucene这个有人提过,但是觉得这个框架的体积比较大,而且又不是需要什么功能,只是要搜索就OK了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 ContentResolver resolver = context.getContentResolver();Cursor cursor = resolver.query( MediaStore.Audio.Media.EXTERNAL_CONTENT_URI , new String[]{...}, null, null, null );再加上对mp3文件的查循条件应该就可以了. 恩,也可以用Intent过滤文件类型 这个正确在加上STAGEFRIGHT中的SniffMP3函数就可以了,:-) 这个看了一下,发现是和数据打交道哦。我在Android上面还没学习过关于数据库的东西,而且我搜索的MP3没有提交过数据库,这个也能查出来?而且这样的话当需要指定一个路径的时候怎么办?那些参数我上网查了一下没查到什么,所以也就不太明白这些差数的意思了。 系统不是自带一个music的app吗?楼主需要研究下那个app 这个是标准方法.只要插着SD卡的android手机以USB连接模式接上PC,就会把手机里的内容和DB同步.我没有实际弄过音乐文件的.不过图象文件的类似处理我做过,android自代的gallery就是这样做的.你可以试试使用adb shell命令去删除sd卡上的图象,即使你删了gallery里还是能显示已经删除图象的略缩图,再用USB联上PC,再看看gallery,你会发现这时才完完全全的看不到那张图了. 我虽然没有试过声音的,不过我觉得应该是一样的. 正解音频文件信息存储在/data/data/com.android.providers.media/databases/ 下的external.db中的audio表可以用sqlite3打开,不过需要有system权限 可以用Intent过滤文件类型 android里边framework中的类MediaScanner是实现这样的功能的,它根据MediaFile中定义的媒体类型(音乐,视频,图片)调用native方法实现递归扫描sd卡,解析相应的信息并存入MediaProvider这个数据库.如果你只是想单纯的获取系统的音乐信息,自己做播放器,就按楼上几位所说的通过ContentResolver查询MediaProvider数据库,如果你自己想了解其中的原理,建议研究MediaProvider和MediaScanner contentprovoider正解,不过在使用的时候要考虑,系统数据库中的数据是不会随着文件变化后就马上变化滴! 需要发开机广播· 移动专家入驻CSDN问答频道,欢迎大家积极踊跃提问 求完整android文件管理系统的源码,可创建文件 ,文件夹,可删除文件,文件夹的 AIDL如何调试进去 android配置环境出错 关于samsung I9000中的包 Android SDK 报错了,怎么办 关于android的nativewindow的显示问题 遇到个AlertDialog.Builder多选问题 listView中加入progressBar,如何在控制错位的情况下还能够更新进度条 Android的这个常见效果是如何实现的呢? 一个普通的button如果设置其边框的颜色? Android Crash的问题
ContentResolver resolver = context.getContentResolver();Cursor cursor = resolver.query(
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI ,
new String[]{...},
null,
null,
null
);再加上对mp3文件的查循条件应该就可以了.
这个正确在加上STAGEFRIGHT中的SniffMP3函数就可以了,:-)
正解
音频文件信息存储在
/data/data/com.android.providers.media/databases/ 下的external.db中的audio表
可以用sqlite3打开,不过需要有system权限
如果你只是想单纯的获取系统的音乐信息,自己做播放器,就按楼上几位所说的通过ContentResolver查询MediaProvider数据库,如果你自己想了解其中的原理,建议研究MediaProvider和MediaScanner