文档章节

Android链接网络的三种方法

Jaume
 Jaume
发布于 2016/07/11 12:18
字数 403
阅读 5
收藏 0

HttpURLConnection的常用方法

// 获取链接网络的路径

URL url = new URL(strUrl);

// 准备开启网络.设置访问网络的配置

HttpURLConnection httpURLConnection = (HttpURLConnection) url .openConnection(); httpURLConnection.setConnectTimeout(1000); httpURLConnection.setReadTimeout(1000);

httpURLConnection.connect();

// 获取响应值 int lin = httpURLConnection.getResponseCode();

// 判断返回值是否为200

if (lin == 200) {

// 如果满足条件开始读取信息

// 准备

InputStream inputStream = httpURLConnection.getInputStream();

byte[] bt = new byte[1024];

ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();

// 开始读取内容

int leng = -1;

while ((leng = inputStream.read(bt)) != -1) {

byteArrayOutputStream.write(bt, 0, leng);

}

// 关闭流 inputStream.close();

// 转换成string字符串 String string = byteArrayOutputStream.toString();

HttpGet的联网方式

//得到httplient对象 HttpClient httpClient = new DefaultHttpClient();

//使用get方式访问网络并指定路径 HttpGet httpGet = new HttpGet(url);

//执行联网操作,发送get请求 HttpResponse httpResponse = httpClient.execute(httpGet);

//判断是否为状态码(200)

HttpStatus.SC_PK == httpResponse.toStatusLine().getStatusCode();

//在while循环正,将服务器返回的实体转出字符串

EntityUtils.toString(entity, “utf-8”);

POST请求的网络链接方式

//创建httpClient对象

HttpClient client = new DefaultHttpClient();

//创建http post请求对象,并指定路径 HttpPost post = new HttpPost(url);

// 将要提交的数据以name--value的形式传递

BasicNameValuePair pair = new BasicNameValuePair("name", name);

//把要提交的数据以实体的形式设置到post对象中

List parameters = new ArrayList();

UrlEncodedFormEntity entity = new UrlEncodedFormEntity(parameters, "utf-8"); post.setEntity(entity);

//执行联网操作,进行post请求

HttpResponse response = client.execute(post);

//获取状态行 StatusLine line = response.getStatusLine();

//获取状态码(200)

int statusCode = line.getStatusCode();

//获取实体对象,实体指的是服务器返回的数据

HttpEntity entity = response.getEntity();

//将服务器返回的实体转出字符串 EntityUtils.toString(entity, "utf-8");

三种请求方式,注释在代码的上方

© 著作权归作者所有

上一篇: 侧滑菜单的实现
下一篇: 读取手机联系人
Jaume
粉丝 3
博文 20
码字总数 5698
作品 0
昌平
程序员
私信 提问
在Android P上使用Http

前言 不少同学在适配Android P的时候会遇到not permitted by network security policy问题: 这是由于我们所使用的接口并非https导致的: Google表示,为保证用户数据和设备的安全,针对下一...

jarvanmo
2018/10/11
0
0
Android高版本联网失败报错:Cleartext HTTP traffic to xxx not permitted解决方法

前言:为保证用户数据和设备的安全,Google针对下一代 Android 系统(Android P) 的应用程序,将要求默认使用加密连接,这意味着 Android P 将禁止 App 使用所有未加密的连接,因此运行 Andr...

独钓渔
05/09
18
0
android 安全退出应用程序

正常关闭应用程序: 当应用不再使用时,通常需要关闭应用,可以使用以下三种方法关闭android应用: 第一种方法:首先获取当前进程的id,然后杀死该进程。 android.os.Process.killProcess(and...

长平狐
2012/09/03
253
0
Android AsyncTask异步处理

在开发Android应用时必须遵守单线程模型的原则: Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行。在单线程模型中始终要记住两条法则: 1. 不要阻塞UI线程 2. 确保只在UI线程...

长平狐
2013/01/06
97
0
Android 平铺背景图片

Android的图片平铺效果,主要有三种方法:1)系统API; 2)XML配置; 3)自定义绘制 方法1: 系统api实现 方法2: XML实现 xml路径:res/drawable/bg.xml 方法3: 自定义绘制 参考推荐: An...

长平狐
2013/01/06
168
0

没有更多内容

加载失败,请刷新页面

加载更多

JS基础-该如何理解原型、原型链?

JS的原型、原型链一直是比较难理解的内容,不少初学者甚至有一定经验的老鸟都不一定能完全说清楚,更多的"很可能"是一知半解,而这部分内容又是JS的核心内容,想要技术进阶的话肯定不能对这个...

OBKoro1
今天
6
0
高防CDN的出现是为了解决网站的哪些问题?

高防CDN是为了更好的服务网络而出现的,是通过高防DNS来实现的。高防CDN是通过智能化的系统判断来路,再反馈给用户,可以减轻用户使用过程的复杂程度。通过智能DNS解析,能让网站访问者连接到...

云漫网络Ruan
今天
14
0
OSChina 周一乱弹 —— 熟悉的味道,难道这就是恋爱的感觉

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @xiaoshiyue :好久没分享歌了分享张碧晨的单曲《今后我与自己流浪》 《今后我与自己流浪》- 张碧晨 手机党少年们想听歌,请使劲儿戳(这里)...

小小编辑
今天
2.9K
24
SpringBoot中 集成 redisTemplate 对 Redis 的操作(二)

SpringBoot中 集成 redisTemplate 对 Redis 的操作(二) List 类型的操作 1、 向列表左侧添加数据 Long leftPush = redisTemplate.opsForList().leftPush("name", name); 2、 向列表右......

TcWong
今天
46
0
排序––快速排序(二)

根据排序––快速排序(一)的描述,现准备写一个快速排序的主体框架: 1、首先需要设置一个枢轴元素即setPivot(int i); 2、然后需要与枢轴元素进行比较即int comparePivot(int j); 3、最后...

FAT_mt
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部