如何查询媒体存储,以便它过滤出少于特定持续时间的媒体文件?

时间:2019-03-28 11:25:13

标签: java android android-contentresolver mediastore

我尝试过的事情:

 EXCLUDE_DURATION = storageUtil.loadExcludedDuration();
 Log.d(TAG ,"EXCLUDE_DURATION: " + String.valueOf(EXCLUDE_DURATION));
 final String selection = SONG_IS_MUSIC + "!=0" + " WHERE " + SONG_DURATION + ">" + EXCLUDE_DURATION;

 // Querying the Media DATABASE.
 cursor = resolver.query(musicUri, projection1, selection, null, null);

因此,在我的活动中,我有一个SeekBar,可以在我的SharedPreferences中保存一个持续时间。

例如,用户选择排除少于30秒的媒体轨道,因此我将SeekBarSharedPreferences的进度放在EXCLUDE_DURATION = storageUtil.loadExcludedDuration();中,下次我启动应用程序时,将其加载到班级中我加载了所有歌曲。 (String SONG_IS_MUSIC = MediaStore.Audio.Media.IS_MUSIC; String SONG_DURATION = MediaStore.Audio.Media.DURATION;

现在,我非常确定我在查询中的选择是错误的,而且我不确定如何仅查询大于30秒的歌曲。

编辑:

{{1}}

0 个答案:

没有答案