package core.utils import android.content.Context import android.net.Uri import java.io.File import java.io.FileOutputStream import java.util.UUID fun copyUriToFile(context: Context, uri: Uri): File? { return try { val inputStream = context.contentResolver.openInputStream(uri) val file = File(context.cacheDir, "${UUID.randomUUID()}.tmp") val outputStream = FileOutputStream(file) inputStream?.use { input -> outputStream.use { output -> input.copyTo(output) } } file } catch (e: Exception) { null } }