1.2.3 网络通信

如今的移动设备早就不再是一个信息孤岛,种类繁多的网络接入方式,使得它可以和其他设备互联互通、传递消息。

在Android中,系统会负责底层网络的连接和管理,开发者可以直接通过HTTP或Socket与远端服务器建立连接,而不需要关心是通过GPRS、EDGE、3G还是WiFi来建立的。Android不仅支持点到端的连接,同样还支持点到点的蓝牙连接、NFC连接等。蓝牙的实现,主要依托于开源项目BlueZ[1]

Android不断地支持各种新的设备间连接手段,比如,持续地对NFC的改进,对WiFi直连的支持(从4.0开始),对于开发者而言,了解这些新的特性,也就是掌握了未来的方向。

除了网络连接方面的支持,Android还内嵌了基于Webkit实现的浏览器控件,用来完美地展示本地或远端的Web页面。在android.webkit包中包括相关的支持类型,它不仅可以展示简单的HTML页面,对JavaScript和CSS的支持也非常好,并且可以将本地的Java代码内嵌成JavaScript脚本来使用,是所有开发者的福音。

对于长时间需要联网的应用而言,如何节约流量、节约电量、保持连接的稳定性,都是非常重要的技术点,关于网络通信的更多分析和实践,将会在第10章进一步展开。

[1]BlueZ的官方主页:http://www.bluez.org/。