关于使用Retrofit下载zip文件不完整的问题,求大佬帮忙解决
   大佬们,我使用Retrofit框架下载一个zip压缩包 但是下载下来后解压缩不了 我想可能是下载的压缩包不完整,一看确实是正常压缩包是94kb 我下载的才54kb  但是不知道哪里出问题了 求大佬帮忙解决  看看代码有没有问题
private void downloadFile(String filePath) {
        Retrofit retrofit = RetrofitManager.getInstance().getRetrofit();
        Api api = retrofit.create(Api.class);
        Call<ResponseBody> call = api.downloadFile();
        call.enqueue(new Callback<ResponseBody>() {
            //下载成功
            @Override
            public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
                InputStream is = null;
                byte[] bytes = new byte[2048];
                int len = 0;
                FileOutputStream fos = null;
                String fileName = Constants.CACHE_ZIP_NAME;
                try {
                    is = response.body().byteStream();
                    long total = response.body().contentLength();
                    File file = new File(filePath, fileName);
                    File dir = new File(mPath);
                    if (!dir.exists()) {
                        dir.mkdirs();
                    }
                    File f = new File(mPath + fileName);
                    if (f.exists()) {
                        f.delete();
                    }
                    fos = new FileOutputStream(file);
                    long sum = 0;
                    while ((len = is.read(bytes)) != -1) {
                        fos.write(bytes, 0, len);
                        sum += len;
                        int progress = (int) (sum * 1.0f / total * 100);
                        runOnUiThread(() -> {
                            mSyncDataBinding.pv.setCurrent(progress);
                            mSyncDataBinding.tv.setText("正在下载..." + progress + "%");
                        });
                    }
                    fos.flush();
                } catch (Exception e) {
                    e.printStackTrace();
                } finally {
                    try {
                        if (is != null) {
                            is.close();
                        }
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                    try {
                        if (fos != null) {
                            fos.close();
                        }
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                }
                runOnUiThread(() ->{
                    mSyncDataBinding.pv.setCurrent(100);
                    mSyncDataBinding.tv.setText("下载完成");
                });
                Log.d("ning", "onResponse: "+response.body());
                //解压文件
//                FileUtil.decompress(mPath+fileName,mPath);
                Log.d("ning", "onResponse: ----"+mPath);
                if (!mHasMain){
                    ActivityUtil.startActivity(SyncDataActivity.this, MainActivity.class);
                }
                finish();
            }
您的每一个用心回答,都会让这个世界变得更美好一些!