Как сделать запрос медиасервера, чтобы он отфильтровывал медиа-файлы меньше определенной продолжительности? - PullRequest
1 голос
/ 28 марта 2019

Что я пробовал:

 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 секунд, поэтому я помещаю прогресс из SeekBar в SharedPreferences, и в следующий раз, когда я запускаю приложение, я загружаю его в свой класс, где я загружаю все песни.(EXCLUDE_DURATION = storageUtil.loadExcludedDuration();)

Теперь я почти уверен, что мой выбор в запросе неверен, и я не уверен, как запрашивать только песни длительностью более 30 секунд.

РЕДАКТИРОВАТЬ:

String SONG_IS_MUSIC = MediaStore.Audio.Media.IS_MUSIC;
String SONG_DURATION = MediaStore.Audio.Media.DURATION;
...