|
@@ -4,6 +4,7 @@ import android.content.Context
|
|
|
import android.net.Uri
|
|
|
import android.support.v4.provider.DocumentFile
|
|
|
import java.io.File
|
|
|
+import java.io.FileNotFoundException
|
|
|
import java.io.InputStream
|
|
|
import java.lang.Exception
|
|
|
import java.net.URI
|
|
@@ -24,13 +25,21 @@ class FileUriSource(private val context: Context, private val uri: Uri): CopyFil
|
|
|
}
|
|
|
|
|
|
override fun getFileSize(): Long? {
|
|
|
- val assetFileDescriptor = context.contentResolver.openAssetFileDescriptor(uri, "r")
|
|
|
- val fileSize = assetFileDescriptor?.length
|
|
|
- assetFileDescriptor?.close()
|
|
|
- return fileSize
|
|
|
+ return try {
|
|
|
+ val assetFileDescriptor = context.contentResolver.openAssetFileDescriptor(uri, "r")
|
|
|
+ val fileSize = assetFileDescriptor?.length
|
|
|
+ assetFileDescriptor?.close()
|
|
|
+ fileSize
|
|
|
+ } catch (e: FileNotFoundException) {
|
|
|
+ null
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
override fun getInputStream(): InputStream? {
|
|
|
- return context.contentResolver.openInputStream(uri)
|
|
|
+ return try {
|
|
|
+ context.contentResolver.openInputStream(uri)
|
|
|
+ } catch (e: FileNotFoundException) {
|
|
|
+ null
|
|
|
+ }
|
|
|
}
|
|
|
}
|