| | |
| | | import android.os.Build |
| | | import android.provider.MediaStore |
| | | import android.util.Log |
| | | import androidx.activity.ComponentActivity |
| | | import androidx.core.content.FileProvider |
| | | import androidx.lifecycle.ViewModel |
| | | import com.google.gson.Gson |
| | | import com.runt.open.mvi.base.BaseActivity |
| | | import com.runt.open.mvi.base.LayoutView |
| | | import com.runt.open.mvi.data.LoadingState |
| | |
| | | import kotlinx.coroutines.flow.MutableStateFlow |
| | | import kotlinx.coroutines.flow.asStateFlow |
| | | import okhttp3.Callback |
| | | import okhttp3.MediaType.Companion.toMediaType |
| | | import okhttp3.OkHttpClient |
| | | import okhttp3.Request |
| | | import okhttp3.RequestBody |
| | | import okhttp3.RequestBody.Companion.toRequestBody |
| | | import okhttp3.Response |
| | | import java.io.File |
| | | import java.io.FileInputStream |
| | |
| | | TAG = javaClass.simpleName; |
| | | } |
| | | |
| | | fun getActivity(): ComponentActivity { |
| | | fun getActivity(): BaseActivity<LayoutView<BaseViewModel> , BaseViewModel> { |
| | | return mActivity!!; |
| | | } |
| | | |
| | |
| | | _isLoading.value = _isLoading.value.copy(isVisible = false); |
| | | } |
| | | |
| | | fun showDialog( title:String = "", message: String = "", confirmText:String = "确定", cancelText:String = "", |
| | | fun showDialog( |
| | | title : String = "" , message : String = "" , confirmText : String = "确定" , cancelText : String = "" , |
| | | touchOutside:Boolean = true,//空白和系统返回 是否关闭 |
| | | showClose:Boolean = false,//显示关闭图标(默认不显示) |
| | | confirmDissmiss:Boolean = true,//点击确定是否关闭 |
| | | cancelDissmiss:Boolean = true,//点击取消是否关闭 |
| | | onDismissRequest : () -> Unit = {}, |
| | | onConfirmRequest : () -> Unit = {}, ){ |
| | | onConfirmRequest : () -> Unit = {} , |
| | | ){ |
| | | |
| | | _messageState.value = MessageState(title = title, message = message, touchOutside = touchOutside, showClose = showClose, confirmText = confirmText, |
| | | cancelText = cancelText, confirmDissmiss = confirmDissmiss, cancelDissmiss = cancelDissmiss, onDismissRequest = onDismissRequest, |
| | |
| | | }.subscribe(observer) |
| | | } |
| | | |
| | | fun createJsonBody(obj : Any) : RequestBody { |
| | | val mediaType = "application/json; charset=utf-8".toMediaType() |
| | | val json = if (obj is String) obj else Gson().toJson(obj) |
| | | val requestBody = json.toString().toRequestBody(mediaType) |
| | | return requestBody; |
| | | } |
| | | |
| | | fun getFilePathFromUri(uri:Uri):String?{ |
| | | var filePath = ""; |
| | | var filePathColumn = arrayOf(MediaStore.Video.Media.DATA) |