Android网络开发之基本介绍
Android平台浏览器采用WebKit引擎,名为ChormeLite,拥有强大扩展特性,每个开发者都可以编写自己的插件。
目前,Android平台有3种网络接口可以使用,分别是:java.net, org.apache, android.net.
1. 使用标准Java接口(java.net.*)连接网络
java.net.* 提供与联网有关的类,包括流和数据包套接字、Internet协议、常用http处理:
创建URL、URLConnection、HttpURLConnection、设置连接参数、连接到服务器、向服务器写数据、从服务器读取数据。
java.net示例:
// 定义地址
URL url = new URL(“http://www.google.com”);
// 打开连接
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
// 得到连接状态
if(conn.getResponseCode() == HttpURLConnection.HTTP_OK) {
// 得到数据
InputStream is = conn.getInputStream();
}
2. 使用apache接口(android.net.http.*)连接网络
Android平台引入Apache HttpClient的同时还提供了对它的一些封装和扩展,例如设置缺省的http超时和缓存大小等。可以将Apache视为流行的开源web服务器,主要包括创建HttpClient、Get/Post、HttpRequest等对象,设置连接参数,执行http操作,处理服务器返回结果等。
HttpClient示例:
HttpClient client = new DefaultHttpClient();
HttpResponse response = client.execute(new HttpGet(“http://www.google.com”));
if(response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
InputStream is = response.getEntity().getContent();
}
3. 使用Android接口(android.net.*)连接网络
android.net.*实际上是通过对Apache中HttpClient的封装来实现一个http编程接口,提供http请求队列管理以及http连接池管理,以提高并发请求的处理效率,还有网络状态监视、网络访问的Socket、常用的Uri类以及有关WIFI相关的类。
简单的Socket连接示例:
InetAddress inetAddress = InetAddress.getByName(“192.168.1.110”);
Socket socket = new Socket(inetAddress, 61203, true);
InputStream is = socket.getInputStream();
OutputStream os = socket.getOutputStream();
…
out.close();
in.close();
socket.close();
Android网络开发之基本介绍的更多相关文章
- android网络开发之测试机连接到服务器上面
1:本人使用Tomcat作为服务器软件,首先打开Tomcat.(可以在浏览器中输入http://www.127.0.0.1:8080/查看) 2:服务器后台使用Servelt开发,这里不再讲解. 3: ...
- 《精通android网络开发》--HTTP数据通信
No1: 例如:http://www.*****.com/china/index.htm 1)http:// 代表超文本传送协议,通知*****.com服务器显示web页,通常不用输入 2)www 代 ...
- Android网络开发
1. WebView用法 ①布局文件新建一个WebView,特别注意线性布局和控件的宽高都要匹配父控件 <LinearLayout xmlns:android="http://sche ...
- Android网络开发之实时获取最新数据
在实际开发中更多的是需要我们实时获取最新数据,比如道路流量.实时天气信息等,这时就需要通过一个线程来控制视图的更新. 示例:我们首先创建一个网页来显示系统当前的时间,然后在Android程序中每隔5秒 ...
- Android网络开发实例(基于抓包实现的网络模拟登录,登出和强制登出)
学习Android有几个月了,最近喜欢上了网络编程,于是想通过Android写一些一个小程序用于连接外网.在这里非常感谢雪夜圣诞的支持,非常感谢,给我打开新的一扇门. 1.声明,本程序只能用于西南大学 ...
- Android网络开发之蓝牙
蓝牙采用分散式网络结构以及快调频和短包技术,支持点对点及点对多点通信,工作在全球通用的2.4GHz ISM(I-工业.S-科学.M-医学)频段,其数据速率为1Mbps,采用时分双工传输方案. 蓝牙 ...
- 《精通android网络开发》--使用Socket实现数据通信
No1: 网络传输应用通常使用TCP.IP或UDP这三种协议实现数据传输.在传输数据的过程中,需要通过一个双向的通信连接实现数据的交互.在这个传输过程中,通常将这个双向链路的一端称为Socket,一个 ...
- Android 网络开发免费API接口
http://www.juhe.cn/ 聚合数据 目前很多接口都收费 https://www.showapi.com ...
- Android项目开发全程(四)-- 将网络返回的json字符串轻松转换成listview列表
前面几篇博文介绍了从项目搭建到获取网络字符串,对一个项目的前期整体工作进行了详细的介绍,本篇接着上篇介绍一下怎么样优雅将网络返回的json字符串轻松转换成listview列表. 先上图,看一下效果. ...
随机推荐
- 【docker】docker启动、重启、关闭命令,附带:docker启动容器报错:docker: Error response from daemon: driver failed programming external connectivity on endpoint es2-node
在关闭并放置centos 的防火墙重启之后[操作:https://www.cnblogs.com/sxdcgaq8080/p/10032829.html] 启动docker容器就发现开始报错: [ro ...
- ldap安装配置过程中遇到的错误,以及解决方法
错误1: [root@openldap openldap]# ldapsearch -LLL-W -x -H ldap://etiantian.org -D "cn=admin,dc=eti ...
- s:select 标签中list存放map对象的使用
1.XXXAction.java private List<Map<String, String>> maptest = null; public List<Map< ...
- JSON.parse()和jQuery.parseJSON()的区别
jQuery.parseJSON(jsonString) : 将格式完好的JSON字符串转为与之对应的JavaScript对象 (jquery 方法) 1 2 3 var str = '[{&qu ...
- fisher精确检验(fisher’s exat test)和超几何分布
- Objective-C中的hasPrefix
Objective-C中的hasPrefix hasPrefix:方法的功能是判断创建的字符串内容是否以某个字符开始,其语法形式如下: -(BOOL)hasPrefix:(NSString*)aStr ...
- 【TYVJ 五月图论专项有奖比赛】
最短路+TSP+最小生成树+倍增LCA+TreeDP 第一题 其实是个TSP问题(然而我没发现),但是关键点很少,只有5个,所以用dij+heap分别预处理出来这五个点为源的最短路…… 然后枚举起点 ...
- is-subsequence
public class Solution { public boolean isSubsequence(String s, String t) { int idx = 0; for (int i=0 ...
- Pytorch torch.optim优化器个性化使用
一.简化前馈网络LeNet 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 im ...
- Length of Last Word leetocde java
题目: Given a string s consists of upper/lower-case alphabets and empty space characters ' ', return t ...