第5章 Android网络编程
在Android中,具体珠网络编程方式有:
● 针对TCP/IP的Socket、ServerSocket
● 针对UDP的DatagramSocket、DatagramPackage
● 对象直接URL的URL、URLConnection和HttpURLConnection
● Google集成了Apache HTTP客户端,使得使用HTTP进行网络编程成为可能
● 我们还可以使用Web Service进行网络编程
● 直接使用WebView视图组件显示网页
5.1 通过Socket、ServerSocket进行网络编程
Socket、ServerSocket编程方式是比较底层的网络编程方式,其他的高级协议如(android编程入门指南 pdfHTTP)都是建立在此基础之上的,且Socket编程是跨平台的编程,还可以在异构语言之间进行通信,
所以掌握Socket编程是最为基础的。
5.1.1 Socket、ServerSocket编程模型
在Socket编程模式中,Socket类用来建立客户端程序,而ServerSocket类用来建立服务器端程序,这样就能构建出C/S模式的程序。
通过ServerSocket建立服务器端程序,一般是指定一个监听端口,用来等待客户端的连接。客户端Socket要指定服务器端的IP地址和端口号。一旦建立,ServerSocket就可以获得一个Socket实例,通过该Socket打开输入、输出流进行通信。具体如下图所示:
5.1.2 Socket编程实例
例Sample_5_1,演示如何实现Socket在Android中的应用。其中服务端使用的是计算机而不是手机(Java编程),客户端使用的是Android手机。
为什么手机作服务器不合适呢?
1)手机一般是通过无线上网,其IP地址是由移动公司动态分配的,也就是说,该IP地址不能固定,随时都可能会发生变化。而服务器的IP应该固定。
2)手机的资源有限,特别地其计算能力差、内存小、执行速度慢,且没有数据库(使用SQLite实际上很差)。
5.2 通过URL进行网络编程
如果我们知道网络上某个资源的URL(如一些图片、音乐和视频文件等),那么我们就可以直接使用URL来进行网络连接。
实例Sample_5_2,使用URL、URLConnection、HttpURLConnection进行URL网络连接,读取服务器的一张图片,并使用ImageView组件显示出来。
该实例需要服务器的支持(创建一个JSP网站,里面有图片可供下载)。
5.3 通过HTTP进行网络编程
通过HTTP进行网络通信有两种:一是HttpRULConnection;二是Apatch HTTP客户端。
略
5.4 通过Web Service进行网络编程
略
5.5 直接使用WebView视图组件显示网页
Android中提供了内置的浏览器,该浏览器使用了开源的WebKit引擎。在Android中使用浏览器需要通过WebView视图组件来实现。
5.5.1 使用WebView打开网页
可以使用WebView的loadUrl()方法来显示该URL内容。例Sample_5_3
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论