検索

ホームページ  >  に質問  >  本文

android - 请问下安卓的网络相关的几个库之间的关系?

请教一下Android网络有关的几个工具之间的关系。

我对Android了解很少,尝试百度后没有遇见比较满意的答复,应该是我的问题太奇怪了,太简单了。。。。

他们是Android请求网络用到的较为底层的实现,通过他我们可以自己封装一个网络请求工具。也只有通过他我们才能进行网络请求?
可以说他们是同级的?

他们是基于之前两者的封装,是一套成熟的网络请求框架。

另外想请问一下,HttpClient他们实际底层实现就是Socket通信吧?

但是我在看volley介绍时说它适合请求频繁的操作(看到过大神的博客说在接受数据时会使用算法分配一块合适的已经存在的内存空间,提高了效率(这个手段我在学习binder机制的时候好像也看到过,在binder驱动层里也有类似的一块区域)),但是我记得Socket连接和断开都会耗费资源难道他不是基于Socket的?

小弟愚昧,希望有大神可以帮解惑,多多纠正我的错误观念。感激不尽!!感激不尽!!

高洛峰高洛峰2889日前407

全員に返信(2)返信します

  • PHPz

    PHPz2017-04-18 09:08:18

    次のように分割できます:
    最下層: HttpClient、HttpURLConnection、okhttp
    ネットワーク リクエスト フレームワーク: Volley、retrofit

    返事
    0
  • ringa_lee

    ringa_lee2017-04-18 09:08:18

    そのような疑問がある場合は、まずネットワーク プロトコル層の階層化、特に HTTP、ソケット、TCP/UDP の関係についての関連知識を理解することをお勧めします。既製の記事を読むことをお勧めします。ご指摘のフレームワークと API については、すべて http プロトコルのカプセル化実装をベースにしており、Retrofit はもう少し高いレベルであり、最下層は okhttp によって実装されていると考えることができます。

    返事
    0
  • キャンセル返事