OkHttp-支持SPDY协议的高效HTTP库
okhttp官网 点此进入
1.了解Okhttp
HttpURLConnection和HttpClient ,虽然两者都支持HTTPS ,流的上传和下载,配置超时, IPV6和连接池,已足够满足我们各种HTTP请求的需求。但更高效的使用HTTP可以让我们的应用运行更快、更节省流量。而OkHttp库就是为此而生。
OkHttp是一个高效的HTTP库:
-
支持SPDY,共享同一个Socket来处理同一个服务器的所有请求
-
如果SPDY不可用,则通过连接池来减少请求延时
-
无缝的支持GZIP来减少数据流量
-
缓存响应数据来减少重复的网络请求
-
会从很多常用的连接问题中自动恢复。如果服务器配置了多个IP地址,当第一个IP连接失败的时候, OkHttp会自动尝试下一个IP。
-
OkHttp还处理 了代理服务器问题和SSL握手失败问题。
-
使用OkHttp无需重写程序中的网络代码。OkHttp实现了几乎和HttpURLConnection-样的API。如果用了HttpClient ,则OkHttp也提供了一个对应的okhttp-apache模块。
OkHttp是一个相对成熟的解决方案 ,并且Android4.4的源码中可以看到HttpURLConnection已经替换成OkHttp实现了。
所以我们更有理由相信OkHttp的强大。
2.程序
此程序是通过get方式与post方式访问一个接口来获取接口的信息。
接口地址 http://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=手机号
1.在build.gradle文件中加入依赖
implementation 'com.squareup.okhttp3:okhttp:4.4.0'
2.AndroidManifest.xml添加网络权限
<uses-permission android:name="android.permission.INTERNET"/>
3.在AndroidMainfest.xml的application标签内添加
android:usesCleartextTraffic="true"
4.MainActivity.java代码,xml就不放了,两个button
public class MainActivity extends AppCompatActivity {
private Button btn1;
private Button btn2;
private String urlAddressFront = "http://tcc.taobao.com";
private String urlAddressMethod = "/cc/json/mobile_tel_segment.htm";
private OkHttpClient okHttpClient;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout

最低0.47元/天 解锁文章
668

被折叠的 条评论
为什么被折叠?



