From 84cf8ee7ae71931a1cc38729ec56ff02da7c3a00 Mon Sep 17 00:00:00 2001 From: Ming Ming Date: Fri, 30 Apr 2021 23:07:14 +0800 Subject: [PATCH] (android) Trigger media scan on downloaded file --- .../com/nkming/nc_photos/MediaStoreChannelHandler.kt | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/android/app/src/main/kotlin/com/nkming/nc_photos/MediaStoreChannelHandler.kt b/android/app/src/main/kotlin/com/nkming/nc_photos/MediaStoreChannelHandler.kt index 1c55b2ed..7ddda7e6 100644 --- a/android/app/src/main/kotlin/com/nkming/nc_photos/MediaStoreChannelHandler.kt +++ b/android/app/src/main/kotlin/com/nkming/nc_photos/MediaStoreChannelHandler.kt @@ -4,6 +4,7 @@ import android.Manifest import android.app.Activity import android.content.ContentValues import android.content.pm.PackageManager +import android.net.Uri import android.os.Build import android.os.Environment import android.provider.MediaStore @@ -103,9 +104,20 @@ class MediaStoreChannelHandler(activity: Activity) BufferedOutputStream(FileOutputStream(file)).use { stream -> stream.write(content) } + + val fileUri = Uri.fromFile(file) + triggerMediaScan(fileUri) result.success(null) } + private fun triggerMediaScan(uri: Uri) { + val scanIntent = Intent().apply { + action = Intent.ACTION_MEDIA_SCANNER_SCAN_FILE + data = uri + } + _context.sendBroadcast(scanIntent) + } + private val _activity = activity private val _context get() = _activity }