管灌系统巡查员智能手机App
zuoxiao
2025-01-08 7040f16f0c725cf72df65b70291f999ace6263ac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
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();
        }
 
    }
 
}