package com.dayu.pipirrapp.tool; import android.content.Context; import com.dayu.pipirrapp.adapter.AddPictureAdapter; import com.dayu.pipirrapp.bean.net.UplodFileState; import com.dayu.pipirrapp.net.ApiManager; import com.dayu.pipirrapp.net.BaseResponse; import com.dayu.pipirrapp.net.upload.UploadFileListener; import java.util.Map; import retrofit2.Call; /** * FileUploadUtils - * * @author zuoxiao * @version 1.0 * @since 2025-01-03 */ public class FileUploadUtils { /** * 上传图片文件 * * @param context * @param uplodFileState * @param uplodFileStates * @param adapter */ public static void uploadFile(Context context, UplodFileState uplodFileState, Map uplodFileStates, AddPictureAdapter adapter) { ApiManager.getInstance().uploadFile(context, uplodFileState, state -> { uplodFileStates.replace(state.getFilePath(), state); adapter.updateProgress(uplodFileState); }, adapter); } /** * 当关闭activity时关闭所有请求 * @param uplodFileStates */ public static void cancelAllCall(Map uplodFileStates){ try { for(UplodFileState uplodFileState:uplodFileStates.values()){ Call mCall =uplodFileState.getThisCall(); if (mCall != null) { mCall.cancel(); } } } catch (Exception e) { e.printStackTrace(); } } }