遍历PDF文件列表,然后使用RxJava 2下载每个文件

问题描述

我要执行以下操作:

  • 遍历PDF表单ID列表
  • 下载每个PDF文件
  • 将其保存到本地存储中

但是,下载文件后,以某种方式我无法在平面图中获得正确的类型。我需要ResponseBody,所以我可以保存文件

代码如下:

  private void downloadAllPdfForms(List<Long> pdfFormsIds,String apiKey) {
    disposables = RxUtil.initdisposables(disposables);

    disposable disposable = Single.just(pdfFormsIds)
      .subscribeOn(Schedulers.io())
      .flatMapPublisher(Flowable::fromIterable)
      .flatMap(id -> workOrdersApiRepository.downloadPdf(createPdfUrl(id,apiKey)))
      .map(response -> {
            if (response.isSuccessful() && response.body() != null) {
              return PdfUtils.savePdfTodisk(response.body(),"pdf_form_" + pdfFormId);
            }
            return Constants.EMPTY;
          }
      )
      .subscribe(new Consumer<Object>() {
        @Override public void accept(Object o) throws Exception {

        }
      },new Consumer<Throwable>() {
        @Override public void accept(Throwable throwable) throws Exception {

        }
      });


    disposables.add(disposable);
}

response。是Object,不是ResponseBody

  Single<Response<ResponseBody>> downloadPdf(String pdfUrl);

这是图片

-

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)