Во фрагменте B у меня есть кнопка отправки, используемая для отправки изображения на сервер.Если нажать кнопку «Отправить», она вернется к фрагменту А. Я использую Multipart
для загрузки изображения на сервер, и процесс выполняется на Thread
, поэтому пользователь может выполнить другую задачу, ожидая загрузки изображения.
Фрагмент B (при нажатии кнопки отправки)
inner class SimpleThread() :Thread() {
override fun run() {
for (i in newList!!) {
val service = RetrofitFactory.makeRetrofitService()
GlobalScope.launch(Dispatchers.IO) {
val request2 = WebApi.createImage(
activity,File(i)
)
}
}
}
WebApi
suspend fun createImage(
file: File?
): WebApiResponse.Image? {
val image = file?.let {
MultipartBody.Part.createFormData(
"image",
it.getName(),
RequestBody.create(MediaType.parse("image/*"), it)
)
}
return RetrofitFactory.apiCall(context) {
RetrofitFactory.makeRetrofitService().submitImages(
image
)
}
}
RetrofitService
@Multipart
@POST("create_image")
fun submitImages(
@Part image: MultipartBody.Part?
): Deferred<Response<WebApiResponse.Image>>
Я могу загрузить изображение на сервер, но как показать прогресс загрузки изображения на фрагменте A?
Любая помощь приветствуется.