Android学习记录(二十八)--Android apache httpclients的使用。
2016-09-18 11:01
676 查看
1.历史原因:
Android当前不在支持APACHE的一套内容,开始推自己的网络请求库,基本等同于okhttp。但是非常令人失望的是,这个库目前看支持是不全的,对于网络鉴权,只支持BASE的网络鉴权,不支持DIGEST鉴权,因此APACHE的库依然还需要使用。但是GOOGLE比较恶心,在新的COMPILESDK为6.0的时候,不再允许引入APACHE的基本库。现在的GRADLE配置如下:
useLibrary 'org.apache.http.legacy'
再加上:
compile files('libs/httpclient-android-4.3.5.1.jar')
2.如何使用:
下面介绍一些基本的用法:连接建立:
HttpClient httpClient = HttpClientBuilder.create().build(); 或者:
HttpClient httpClient = HttpClients.custom().build();创建的是一个CloseableHttpClient类,这个类继承自HttpClient.
HttpClients.custom()创建的是一个HttpClientBuilder类。 这个类主要是进行HTTPCLIENT相关的配置,如:
public final HttpClientBuilder setSSLSocketFactory( final LayeredConnectionSocketFactory sslSocketFactory)这个方法进行SSL的相关的配置。
public final HttpClientBuilder setConnectionManager(
final HttpClientConnectionManager connManager)进行相关的连接属性配置等等。
大部分的填充内容都继承自原来的APACHE基础库,这样就可以保证相关的兼容性。
原先的HTTPGET,HTTPCONTEXT等并没有变化,HttpResponse response = httpClient.execute(httpGet, context)等还是沿用原来的库; 主要就是HTTPCLIENT的修改。熟悉HttpClientBuilder和CloseableHttpClient,就可以应付一般的网络请求。
相关文章推荐
- Android 开发学习记录(2)---- httpclient使用(一)
- Android 开发学习记录(3)---- httpclient使用(二)
- Android 开发学习记录(4)---- httpclient使用(三)
- 【转】Android使用事务操作SQLite数据库【学习记录】
- Android-网络请求数据使用apache httpclient v4
- Android学习记录(6)—将java中的多线程下载移植到Android中(即多线程下载在Android中的使用)③
- Android XML使用的学习记录
- android学习日记-3 Apache的HttpClient
- android之Apache Http初使用——向服务器发送请求
- android使用apache http包链接servlet
- Android学习记录(6)—将java中的多线程下载移植到Android中(即多线程下载在Android中的使用)③
- 【异常】Android中使用localhost:8080或者172.0.0.1:8080访问本地服务器org.apache.http.conn.HttpHostConnectException异常
- Android XML使用的学习记录
- Android的网络应用-使用Apache HttpClient
- Android使用Apache HttpClient发送GET、POST请求
- android 学习记录—————Handler的使用
- 【转】Android使用SQLiteDatabase操作SQLite数据库【学习记录】
- 【Android学习日记】(十三) Http Get使用简单例子
- 天天记录 - Android invalidate学习使用的例子
- Android使用Apache HttpClient发送GET、POST请求