网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据。程序员所做的事情就是把数据发送到指定的位置,或者接收到指定的数据,这个就是狭义的网络编程范畴。
咱们首先了解如下几个问题: Android平台网络相关API接口 java.net.*(标准Java接口) java.net.*提供与联网有关的类,包括流、数据包套接字(socket)、Internet协议、常见Http处理等。好比:建立URL,以及URLConnection/HttpURLConnection对象、设置连接参数、连接到服务器、向服务器写数据、从服务器读取数据等通讯。这些在Java网络编程中均有涉及。java
Org.apache接口 对于大部分应用程序而言JDK自己提供的网络功能已远远不够,这时就须要Android提供的Apache HttpClient了。它是一个开源项目,功能更加完善,为客户端的Http编程提供高效、最新、功能丰富的工具包支持。程序员
Android.net.*(Android网络接口) 经常使用此包下的类进行Android特有的网络编程,如:访问WiFi,访问Android联网信息,邮件等功能。web
网络架构主要有两种模式B/S,C/S B/S----》就是浏览器/服务器端模式了,经过应用层的HTTP协议通讯,不须要特定客户端软件,而是须要统一规范的客户端,简而言之就是Android网络浏览器(如chrome,UcWeb,QQ浏览器等等)访问web服务器端的方式了。chrome
C/S-----》就客户端/服务器端模式,经过任意的网络协议通讯,须要特定的客户端软件。 服务器端返回客户端的内容有三种方式: 以HTML代码的形式返回。 以XML字符串的形式返回,作Android开发时这种方式比较多。返回的数据须要经过XML解析(SAX、DOM,Pull,等)器进行解析(必备知识)。 以json对象的方式返回。 (-)网络链接 (socket链接和http链接)apache
Socket是一个针对TCP和UDP编程的接口,你能够借助它创建TCP链接等等。而TCP和UDP协议属于传输层 。 而http是个应用层的协议,它实际上也创建在TCP协议之上。编程
参考文档:http://blog.csdn.net/jie1991liu/article/details/26690733json