fix: Fix batches collector

This commit is contained in:
Myzel394 2024-01-02 17:24:04 +01:00
parent b8787586db
commit f35a54cfa6
No known key found for this signature in database
GPG Key ID: 79CC92F37B3E1A2B

View File

@ -75,7 +75,7 @@ abstract class BatchesFolder(
context.contentResolver.query( context.contentResolver.query(
scopedMediaContentUri, scopedMediaContentUri,
null, null,
null, "${MediaStore.MediaColumns.DISPLAY_NAME} LIKE '$mediaPrefix%'",
null, null,
null, null,
)!!.use { cursor -> )!!.use { cursor ->
@ -104,7 +104,7 @@ abstract class BatchesFolder(
val result = callback(rawName, counter, uri, cursor) val result = callback(rawName, counter, uri, cursor)
if (result != null) { if (result == false) {
return return
} }
} }
@ -143,27 +143,30 @@ abstract class BatchesFolder(
} }
BatchType.MEDIA -> { BatchType.MEDIA -> {
val fileUris = mutableListOf<Uri>() val fileUris = mutableListOf<Pair<String, Uri>>()
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
queryMediaContent { _, _, uri, _ -> queryMediaContent { rawName, _, uri, _ ->
fileUris.add(uri) fileUris.add(Pair(rawName, uri))
} }
} else { } else {
legacyMediaFolder.listFiles()?.forEach { legacyMediaFolder.listFiles()?.forEach {
fileUris.add(it.toUri()) fileUris.add(Pair(it.name, it.toUri()))
} }
} }
fileUris fileUris
.sortedBy { .sortedBy {
return@sortedBy it val name = it.first
.lastPathSegment!!
return@sortedBy name
.substring(mediaPrefix.length) .substring(mediaPrefix.length)
.substringBeforeLast(".") .substringBeforeLast(".")
.toInt() .toInt()
} }
.map { uri -> .map { pair ->
val uri = pair.second
FFmpegKitConfig.getSafParameterForRead( FFmpegKitConfig.getSafParameterForRead(
context, context,
uri, uri,