Android:将图像上传到服务器的最佳HTTP库是什么?

时间:2015-09-23 01:51:05

标签: java android performance http cloud

有许多库可用,但哪种图片上传更好? 有谁知道Instagram使用哪个库?

我之前尝试过截击,但这并不好。

以下是流行的“

AndroidAsync - https://github.com/koush/AndroidAsync

android-async-http - https://github.com/loopj/android-async-http

okhttp - https://github.com/square/okhttp

http-request - https://github.com/kevinsawicki/http-request

android-volley - https://github.com/mcxiaoke/android-volley

离子 - https://github.com/koush/ion

改造 - https://github.com/square/retrofit

Bolts-Android - https://github.com/BoltsFramework/Bolts-Android

由于

1 个答案:

答案 0 :(得分:13)

你提到的图书馆本质上是非常不同的。它们或多或少可以像这样分组

套接字级API:

这包括

  • AndroidAsync
  • okhttp
  • HttpClient的
  • HttpURLConnection类

这些是非常低级的API,它围绕如何通过Socket和优化发送包来构建。

其中,android 23现在内部使用okhttp,okhttp已经存在了很长时间,这使得它成为我个人最喜欢的Socket级API。

更高级API:

这些API旨在帮助开发人员以易用性更快地开发,它通常用作Socket级API的包装器。这是他们之间的关系

  • 改造 - okhttp
  • android-async-http - HttpClient
  • ion - AndroidAsync
  • Bolts-Android - 不确定它基于什么
  • Volley * - 取决于API级别,系统库中的HttpURLConnection / HttpClient

图片加载API:

Volley是一个特殊的API,它是一个高级API,但它有另一种用法,即Image Loading。这些类型的API包括以下内容:

  • 排球
  • 毕加索
  • 壁画
  • 滑翔

<强>结论:

对于您的方案,我相信您正在寻找高级API。但是,很难建议最佳 API,这取决于使用情况和个人偏好。

Volley WAS *作为高级API 不是很好,不包括几个功能,例如Https,数据流上传。我建议你开始为你的项目寻找最好的库,从改造离子螺栓开始。

*我没有尝试过Volley,因为我在它发布的第一年使用它,它可能已经改变了。

修改

我刚刚安装了 Instagram 应用并检查了他们的OPEN SOURCE LIBRARIES部分,他们已经包含 android-async-http ,这可能意味着他们使用了它用于HTTP请求。