【问题标题】:One Connection to Server - download several Images一个连接到服务器 - 下载多个图像
【发布时间】:2018-10-24 07:02:49
【问题描述】:

从服务器下载图像时,我想知道是否可以改进以下代码,以便我只与服务器(主机)建立一个连接(握手),然后从该服务器下载图像 - 一个接一个?

看代码

字符串 imageUrl = https://image.tmdb.org/t/p/w500//jjPJ4s3DWZZvI4vw8Xfi4Vqa1Q8.jpg

        URL imgUrl = new URL(imageUrl);
                            HttpURLConnection httpURLConnection = (HttpURLConnection) imgUrl.openConnection();
                            httpURLConnection.connect();
                            InputStream in = httpURLConnection.getInputStream();
                            Bitmap movieBitmap = BitmapFactory.decodeStream(in);

这是在 AsyncTask 的循环中完成的,因此这里的完整 url 是从服务器获取的第一个文件/图像。然后在下一个循环中,将服务器上文件名的路径更改为新图像。

这里的问题是在每个循环步骤中都建立了一个连接 - 因此,如果有 10 次迭代,则有 10 个连接,因为我必须与每个图像建立一个连接。

所以问题是我是否可以将完整的 url-path 分解为

  • 主机(即与 https://image.tmdb.org 的 ONE 连接)
  • 建立连接后,添加其余部分,即图像在服务器上的位置(本例中为:/t/p/w500//jjPJ4s3DWZZvI4vw8Xfi4Vqa1Q8.jpg)?

【问题讨论】:

    标签: java android httpurlconnection httpconnection


    【解决方案1】:

    尝试使用 Retrofit,在这里你可以添加一个基本 URL,然后动态更改剩余的 url

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-03
      • 1970-01-01
      • 2020-10-14
      • 2021-10-15
      • 1970-01-01
      • 1970-01-01
      • 2013-03-04
      • 2021-08-17
      相关资源
      最近更新 更多