为特定文件夹构建MediaStore URI

4
例如,如果我有两个目录/sdcard/Music/Music-1/sdcard/Music/Music-2,我该如何构建一个URI来获取Music-1目录中的文件。我可以使用MediaStore.Audio.Media.EXTERNAL_CONTENT_URI来获取所有外部存储的内容,但如何仅对特定目录进行操作呢?
3个回答

3
Cursor mCursor = getContentResolver().query(
                   uri1, Selection, 
                   android.provider.MediaStore.Audio.Media.DATA + " like ? ", 
                   new String[] {str}, null);

您可能需要使用"%"+str+"%",因为"Music-1"只是MediaStore.Audio.Media.DATA的一部分。


如何从 Uri 获取字符串? - John Glen

3

DATA 字段中过滤路径并构建一个合适的 SELECT WHERE 语句以匹配文件夹名称,您可以在查询中使用 SUBSTR 函数 ;-)


2

请按照以下步骤操作:

Cursor mCursor = getContentResolver().query(uri1, Selection, 
            android.provider.MediaStore.Audio.Media.DATA + " like ? ", 
            new String[] {str},
            null);

如何从Uri中获取字符串? - John Glen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接