没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
![preview](https://dl-preview.csdnimg.cn/14882055/0001-9f584d8d57f72cf676b873b5391f7178_thumbnail.jpeg)
![preview-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/scale.ab9e0183.png)
试读
2页
如果你做过多媒体应用,一定会苦恼过,怎样获取sd卡中的多媒体文件。android还是很强大的,如果你知道怎么调用android的api,万事就ok了。 当手机或模拟器开机时,会调用android的MediaScanner,扫描sd卡和内存里的文件。以下是log信息。 代码如下:12-13 15:39:11.062: VERBOSE/MediaPlayerService(67): Create new media retriever from pid 349<BR> 12-13 15:39:11.082: DEBUG/MediaScannerService(349): getDefaultLo
资源推荐
资源详情
资源评论
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![gz](https://img-home.csdnimg.cn/images/20210720083447.png)
![application/pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![thumb](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/release/download_crawler_static/14882055/bg1.jpg)
基于基于Android扫描扫描sd卡与系统文件的介绍卡与系统文件的介绍
如果你做过多媒体应用,一定会苦恼过,怎样获取sd卡中的多媒体文件。android还是很强大的,如果你知道怎么调用android
的api,万事就ok了。
当手机或模拟器开机时,会调用android的MediaScanner,扫描sd卡和内存里的文件。以下是log信息。
代码如下:
12-13 15:39:11.062: VERBOSE/MediaPlayerService(67): Create new media retriever from pid 349<BR>
12-13 15:39:11.082: DEBUG/MediaScannerService(349): getDefaultLocale =zh_CN
12-13 15:39:11.122: DEBUG/SurfaceFlinger(102): Layer::requestBuffer(this=0x7c8c68), index=1, pid=12866, w=309, h=192
success
12-13 15:39:11.142: INFO/MediaScanner(349): mOriginalCount = 14, prune thumb flag = false<BR>
12-13 15:39:11.142: DEBUG/MediaScanner(349): prescan time: 44ms<BR>
12-13 15:39:11.142: DEBUG/MediaScanner(349): scan time: 13ms<BR>
12-13 15:39:11.142: DEBUG/MediaScanner(349): postscan time: 2ms<BR>
12-13 15:39:11.142: DEBUG/MediaScanner(349): total time: 59ms<BR>
12-13 15:39:11.152: DEBUG/MediaProvider(349): un-lock thumbnail worker<BR>
12-13 15:39:11.152: DEBUG/MediaProvider(349): un-lock thumbnail worker<BR>
12-13 15:39:11.182: DEBUG/MediaScannerService(349): done scanning volume external
那么扫描后的记录它保存到哪里了呢。哈。你觉得在哪里呢?data/data/com.android.media/providers/databases/external
它存了些什么信息呢,拉出来看看吧:
那么,我们直接使用ContentProvider就可以直接获取到sd卡中多媒体的信息了,你还用去listfile么?还用去自己解析媒体文件
中的信息么(时长,文件名,专辑名。。应有尽有哦)?
代码如下:
Cursor cursor = context.getContentResolver().query(<BR> MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,<BR>
new String[] { MediaStore.Audio.Media._ID, MediaStore.Audio.Media.DISPLAY_NAME, MediaStore.Audio.Media.TITLE,
<BR> MediaStore.Audio.Media.DURATION, MediaStore.Audio.Media.ARTIST, MediaStore.Audio.Media.ALBUM,
<BR> MediaStore.Audio.Media.YEAR, MediaStore.Audio.Media.MIME_TYPE, MediaStore.Audio.Media.SIZE,
MediaStore.Audio.Media.DATA}<BR> , “_size>?”, new String[]{1024*1024+””},null);
好了,最后一个问题<BR> 当你往sd卡中添加一些多媒体文件的时候,android没有自动将它刷新到数据库中。那么我们怎么
让它手动刷新呢,如下:
代码如下:
IntentFilter intentFilter = new IntentFilter(Intent.ACTION_MEDIA_SCANNER_STARTED);
intentFilter.addAction(Intent.ACTION_MEDIA_SCANNER_FINISHED);
intentFilter.addDataScheme(“file”);
scanReceiver = new ScanSdFilesReceiver();
registerReceiver(scanReceiver, intentFilter);
sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse(“file://” +
Environment.getExternalStorageDirectory())));
private class ScanSdFilesReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (Intent.ACTION_MEDIA_SCANNER_STARTED.equals(action)) {
scanHandler.sendEmptyMessage(STARTED);
}
if (Intent.ACTION_MEDIA_SCANNER_FINISHED.equals(action)) {
scanHandler.sendEmptyMessage(FINISHED);
资源评论
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/default.jpg!1)
weixin_38671048
- 粉丝: 4
- 资源: 870
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)