首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用URI查询MediaStore

使用URI查询MediaStore
EN

Stack Overflow用户
提问于 2011-07-15 05:11:17
回答 2查看 3.2K关注 0票数 0

我正在尝试找到一种方法来通过uri在mediastore中查询单个文件。我有一个uris列表,我想在我的应用程序中提供这些uris的附加信息。

例如: content://media/external/audio/media/10

file:///sdcard/media/audio/sample.mp3

这是我正在处理的代码。我不确定id应该是什么?

代码语言:javascript
复制
        String[] cols = new String[] {
                MediaStore.Audio.Media._ID,
                MediaStore.Audio.Media.DATA,
                MediaStore.Audio.Media.TITLE
        };


        String where = MediaStore.Audio.Media._ID + "=" + id;

        String[] proj = { MediaStore.Audio.Media._ID, MediaStore.Audio.Media.DATA, MediaStore.Audio.Media.DISPLAY_NAME, MediaStore.Video.Media.SIZE, MediaStore.Audio.Media.ALBUM };

        Cursor musiccursor = managedQuery(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, proj, null, cols, null);

提前谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-07-15 23:44:25

好了,我想通了。这是我想要的信息的链接:

http://developer.android.com/guide/topics/providers/content-providers.html

下面是完成这项任务的代码:

代码语言:javascript
复制
Uri uri = Uri.parse("content://media/external/audio/media/10");
Cursor musiccursor = managedQuery(uri, null, null, null, null);

if (musiccursor.moveToFirst()) {
    String title; 
    int titleColumn = musiccursor.getColumnIndex(MediaStore.Audio.Media.TITLE); 
    title = musiccursor.getString(titleColumn);
}   
票数 2
EN

Stack Overflow用户

发布于 2012-03-23 05:20:56

没有必要获取一列的所有内容。试试这个:

代码语言:javascript
复制
Uri uri = Uri.parse("content://media/external/audio/media/10");
String[] columns = new String[] {MediaStore.Audio.Media.TITLE};
Cursor musiccursor = managedQuery(uri, columns, null, null, null);

if (musiccursor.moveToFirst()) {
    String title = musiccursor.getString(0);
}   
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6699979

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档