Replace deprecated ACTION_MEDIA_SCANNER_SCAN_FILE intent

(cherry picked from commit 0b4f3f5532)
This commit is contained in:
arkon 2022-07-09 17:51:58 -04:00
parent ac4f98e152
commit c7e44aa22f
3 changed files with 6 additions and 15 deletions

View file

@ -7,6 +7,7 @@ import android.content.Intent
import android.net.Uri
import android.os.Build
import androidx.core.content.ContextCompat
import androidx.core.net.toUri
import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.data.backup.BackupRestoreService
import eu.kanade.tachiyomi.data.database.DatabaseHelper
@ -193,7 +194,7 @@ class NotificationReceiver : BroadcastReceiver() {
val file = File(path)
file.delete()
DiskUtil.scanMedia(context, file)
DiskUtil.scanMedia(context, file.toUri())
}
/**

View file

@ -8,6 +8,7 @@ import android.net.Uri
import android.os.Build
import android.os.Environment
import android.provider.MediaStore
import androidx.core.net.toUri
import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.util.storage.DiskUtil
import eu.kanade.tachiyomi.util.storage.cacheImageDir
@ -82,7 +83,7 @@ class ImageSaver(
}
}
DiskUtil.scanMedia(context, destFile)
DiskUtil.scanMedia(context, destFile.toUri())
return destFile.getUriCompat(context)
}

View file

@ -1,12 +1,11 @@
package eu.kanade.tachiyomi.util.storage
import android.content.Context
import android.content.Intent
import android.media.MediaScannerConnection
import android.net.Uri
import android.os.Environment
import android.os.StatFs
import androidx.core.content.ContextCompat
import androidx.core.net.toUri
import com.hippo.unifile.UniFile
import eu.kanade.tachiyomi.util.lang.Hash
import java.io.File
@ -74,21 +73,11 @@ object DiskUtil {
}
}
/**
* Scans the given file so that it can be shown in gallery apps, for example.
*/
fun scanMedia(context: Context, file: File) {
scanMedia(context, file.toUri())
}
/**
* Scans the given file so that it can be shown in gallery apps, for example.
*/
fun scanMedia(context: Context, uri: Uri) {
val action = Intent.ACTION_MEDIA_SCANNER_SCAN_FILE
val mediaScanIntent = Intent(action)
mediaScanIntent.data = uri
context.sendBroadcast(mediaScanIntent)
MediaScannerConnection.scanFile(context, arrayOf(uri.path), null, null)
}
/**