import of Signal's code to deal with attachments saving

This commit is contained in:
Brice-W
2021-04-28 09:22:19 +10:00
parent 9f26436041
commit a5e376b616
3 changed files with 258 additions and 10 deletions

View File

@@ -1,7 +1,10 @@
package org.session.libsignal.utilities.externalstorage
import android.content.Context
import android.net.Uri
import android.os.Build
import android.os.Environment
import android.provider.MediaStore
import java.io.File
object ExternalStorageUtil {
@@ -45,6 +48,30 @@ object ExternalStorageUtil {
return context.externalCacheDir
}
fun getVideoUri(): Uri {
return MediaStore.Video.Media.EXTERNAL_CONTENT_URI;
}
fun getAudioUri(): Uri {
return MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
}
fun getImageUri(): Uri {
return MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
}
fun getDownloadUri(): Uri {
if (Build.VERSION.SDK_INT < 29) {
return getLegacyUri(Environment.DIRECTORY_DOWNLOADS);
} else {
return MediaStore.Downloads.EXTERNAL_CONTENT_URI;
}
}
private fun getLegacyUri(directory: String): Uri {
return Uri.fromFile(Environment.getExternalStoragePublicDirectory(directory))
}
@JvmStatic
fun getCleanFileName(fileName: String?): String? {
var fileName = fileName ?: return null