android okhttp异步请求使用详解 (2)

本文详细介绍了Android中OkHttp的使用,包括HTTP客户端的优势、导入步骤、主要功能,以及GET和POST异步请求的实现。通过示例代码展示了如何发起GET和POST请求,并总结了请求的基本步骤。
摘要由CSDN通过智能技术生成

一、OKHttp简介

OkHttp 是一款高效的 HTTP 客户端,内部依赖okio,它有以下优点:

  • HTTP/2 支持允许对同一主机的所有请求共享同一个socket。
  • 连接池可减少请求延迟(如果 HTTP/2 不可用)。
  • 透明 GZIP 可缩小下载大小。
  • 响应缓存可完全避免重复请求的网络。

okhttp导入

okhttp官网地址
OkHttp 3.12.x 及以下的版本支持 Android 2.3+(API 级别 9+)和 Java 7+。同时还要导入okhttp依赖的okio库,而Okio在1.x版本是基于Java实现的,2.x则是Kotlin实现的。这里我的Android版本是2.3,基于Java实现。
在项目中的app目录下的build.gradle文件中添加以下代码

dependencies { // okhttp3的依赖
    compile 'com.squareup.okhttp3:okhttp:3.8.1'
    compile 'com.squareup.okio:okio:1.12.0'}

在AndroidManifest.xml中添加网络权限 :

    <uses-permission android:name="android.permission.INTERNET"/>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
OkHttp支持异步请求,当发起异步请求时,程序是非阻塞状态,可以继续接收新的请求,响应返回时会调用一个回调处理响应数据。 在OkHttp中,异步请求是通过使用Callback来实现的。异步请求时会用到Dispatcher,它会内部指定线程池去执行异步任务,并在执行完毕之后提供了finish方法结束异步请求。然后从等待队列中获取下一个满足条件的异步任务去执行。 这个方式可以避免在请求发起到拿到响应结果之前程序一直处于阻塞状态,提高了程序的性能。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [详解AndroidOkHttp包编写异步HTTP请求调用的方法](https://download.csdn.net/download/weixin_38522552/12795788)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Okhttp同步与异步请求知识介绍](https://blog.csdn.net/sinat_34241861/article/details/114307539)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值