Loading build.gradle +1 −1 Original line number Original line Diff line number Diff line Loading @@ -7,7 +7,7 @@ buildscript { propMinSdkVersion = 21 propMinSdkVersion = 21 propTargetSdkVersion = propCompileSdkVersion propTargetSdkVersion = propCompileSdkVersion propVersionCode = 1 propVersionCode = 1 propVersionName = '5.5.18' propVersionName = '5.5.20' kotlin_version = '1.3.11' kotlin_version = '1.3.11' } } Loading commons/src/main/kotlin/com/simplemobiletools/commons/extensions/Context-storage.kt +11 −1 Original line number Original line Diff line number Diff line Loading @@ -7,6 +7,8 @@ import android.hardware.usb.UsbManager import android.media.MediaScannerConnection import android.media.MediaScannerConnection import android.net.Uri import android.net.Uri import android.os.Environment import android.os.Environment import android.os.Handler import android.os.Looper import android.provider.DocumentsContract import android.provider.DocumentsContract import android.provider.MediaStore import android.provider.MediaStore import android.text.TextUtils import android.text.TextUtils Loading Loading @@ -391,7 +393,15 @@ fun Context.rescanDeletedPath(path: String, callback: (() -> Unit)? = null) { return return } } MediaScannerConnection.scanFile(applicationContext, arrayOf(path), null) { s, uri -> // scanFile doesnt trigger in some cases, refresh items manually after some period val SCAN_FILE_MAX_DURATION = 1000L val scanFileHandler = Handler(Looper.getMainLooper()) scanFileHandler.postDelayed({ callback?.invoke() }, SCAN_FILE_MAX_DURATION) MediaScannerConnection.scanFile(applicationContext, arrayOf(path), null) { path, uri -> scanFileHandler.removeCallbacksAndMessages(null) try { try { applicationContext.contentResolver.delete(uri, null, null) applicationContext.contentResolver.delete(uri, null, null) } catch (e: Exception) { } catch (e: Exception) { Loading Loading
build.gradle +1 −1 Original line number Original line Diff line number Diff line Loading @@ -7,7 +7,7 @@ buildscript { propMinSdkVersion = 21 propMinSdkVersion = 21 propTargetSdkVersion = propCompileSdkVersion propTargetSdkVersion = propCompileSdkVersion propVersionCode = 1 propVersionCode = 1 propVersionName = '5.5.18' propVersionName = '5.5.20' kotlin_version = '1.3.11' kotlin_version = '1.3.11' } } Loading
commons/src/main/kotlin/com/simplemobiletools/commons/extensions/Context-storage.kt +11 −1 Original line number Original line Diff line number Diff line Loading @@ -7,6 +7,8 @@ import android.hardware.usb.UsbManager import android.media.MediaScannerConnection import android.media.MediaScannerConnection import android.net.Uri import android.net.Uri import android.os.Environment import android.os.Environment import android.os.Handler import android.os.Looper import android.provider.DocumentsContract import android.provider.DocumentsContract import android.provider.MediaStore import android.provider.MediaStore import android.text.TextUtils import android.text.TextUtils Loading Loading @@ -391,7 +393,15 @@ fun Context.rescanDeletedPath(path: String, callback: (() -> Unit)? = null) { return return } } MediaScannerConnection.scanFile(applicationContext, arrayOf(path), null) { s, uri -> // scanFile doesnt trigger in some cases, refresh items manually after some period val SCAN_FILE_MAX_DURATION = 1000L val scanFileHandler = Handler(Looper.getMainLooper()) scanFileHandler.postDelayed({ callback?.invoke() }, SCAN_FILE_MAX_DURATION) MediaScannerConnection.scanFile(applicationContext, arrayOf(path), null) { path, uri -> scanFileHandler.removeCallbacksAndMessages(null) try { try { applicationContext.contentResolver.delete(uri, null, null) applicationContext.contentResolver.delete(uri, null, null) } catch (e: Exception) { } catch (e: Exception) { Loading