【发布时间】:2012-03-05 14:20:33
【问题描述】:
我正在尝试创建一个同时显示来自 mediastore 的音频和视频的列表。但是,我不确定如何创建这样的查询 - 是否可以同时获取音频和视频的信息?
所以要查询视频和音频,我这样做:
String[] projV = { MediaStore.Video.Media._ID,
MediaStore.Video.Media.DATA,
MediaStore.Video.Media.DISPLAY_NAME,
MediaStore.Video.Media.DURATION,
MediaStore.Video.Media.DATE_TAKEN };
Cursor videoCursor = getActivity().managedQuery(
MediaStore.Video.Media.EXTERNAL_CONTENT_URI, projV, null,
null, null);
String[] projA = { MediaStore.Audio.Media._ID,
MediaStore.Audio.Media.DATA,
MediaStore.Audio.Media.DISPLAY_NAME,
MediaStore.Audio.Media.MIME_TYPE,
MediaStore.Audio.Media.DURATION,
MediaStore.Audio.Media.DATE_ADDED };
Cursor audioCursor = getActivity().managedQuery(
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, projA, null,
null, null);
我研究过使用CursorJoiner 或MergeCursor,但我不确定如何使用它们,甚至不确定它是正确的解决方案。
所以我的问题是;有没有办法为 mediaStore 构造一个查询,该查询返回一个包含音频和视频信息的游标,或者我需要更复杂的东西,例如使用 CursorJoiner 或 MergeCursor。
正如我在开头提到的,我的目标是在媒体存储中创建一个显示所有音频和视频的列表 - 这是正确的方法还是我从错误的角度看待它?
谢谢。
【问题讨论】:
标签: android cursor media mediastore