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<String, UplodFileState> 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<String, UplodFileState> uplodFileStates){
|
try {
|
for(UplodFileState uplodFileState:uplodFileStates.values()){
|
Call<BaseResponse> mCall =uplodFileState.getThisCall();
|
if (mCall != null) {
|
mCall.cancel();
|
}
|
}
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
|
}
|
|
}
|