Runt
2024-11-08 165fa232853294f06cd5257d646b66e75a487440
libmvi/src/main/java/com/runt/open/mvi/base/model/BaseViewModel.kt
@@ -3,6 +3,7 @@
import android.content.Intent
import android.net.Uri
import android.os.Build
import android.provider.MediaStore
import android.util.Log
import androidx.activity.ComponentActivity
import androidx.core.content.FileProvider
@@ -19,6 +20,7 @@
import okhttp3.Request
import okhttp3.Response
import java.io.File
import java.io.FileInputStream
import java.io.FileOutputStream
import java.io.IOException
import java.io.InputStream
@@ -204,4 +206,30 @@
            }.subscribe(observer)
    }
    fun getFilePathFromUri(uri:Uri):String?{
        var filePath = "";
        var filePathColumn = arrayOf(MediaStore.Video.Media.DATA)
        var cursor = mActivity!!.contentResolver.query(uri!!,filePathColumn,null,null,null)
        cursor?.let {
            it.moveToFirst()
            var index = it.getColumnIndex(filePathColumn[0])
            if(index > -1 && index < it.columnCount){
                filePath = it.getString(index)
            }
            it.close();
        }
        var file = File(filePath);
        Log.i(TAG,"文件是否存在=${file.exists()} file=${filePath} ")
        if(file.exists()){
            try {
                var inputStream = FileInputStream(file)
                inputStream.close();
                return filePath;
            }catch (e:Exception){
                return null;
            }
        }else{
            return null;
        }
    }
}