Android系统中Wi-Fi网络的研究与实现.pdf
上传人:qw****27 上传时间:2024-09-12 格式:PDF 页数:5 大小:348KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

Android系统中Wi-Fi网络的研究与实现.pdf

Android系统中Wi-Fi网络的研究与实现.pdf

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第25卷第5期成都信息:[程学院学报V1,25No.52010年1O月JOURNALOFCHENGDUUNIVERSITYOFINFORMATIONTECHNOLOGYOct.2O10文章编号:1671I742(2()10)050495—05Android系统中Wi.Fi网络的研究与实现陈法海,杨斌(西南交通大学信息科学与技术学院,四川成都610031)摘要:对时下流行的Android系统中wi.Fi网络的实现技术进行了研究。在详细分析wi—Fi模块的系统组成的基础上,从系统使用及编程者的角度,深入剖析了wiFi模块的初始化、启动、接入点扫描和IP地址配置的实现,通过移植及调试wi—驱动程序,成功验证了wi—Fi网络的实现过程。关键词:计算机应用技术;嵌入式系统;Android;WiFi模块;接入点中图分类号:TP316文献标识码:A1Android系统概述AndrO.dL]是Google公司开发的基于Linux平台开源的手机操作系统,该平台由操作系统、中间件、用户界面和应用软件组成,具体框架结构由5部分组成,其核心为Linux2.6内核,向上搭配Libraries(函数库)及An—droidRuntime(运行环境),再配合ApplicationFramework(应用程序框架),来开发各种不同的Application(应用程序),是首个为移动终端打造的开放和完整的移动软件J。Android系统基于Linux2.6内核来提供系统的核心服务,例如安全机制,内存管理,进程管理,网络堆栈和驱动模块。其包含一组核心库,提供了Java语言核心库内的大部分功能。Android应用程序运行于Dalvik虚拟机上,Dalvik虚拟机是基于寄存器的,编译器将Java源文件转为c1asS文件,内置的dx工具又将class文件转化为Dex文件,Dex文件是在Dalvik虚拟机上运行程序的标准格式J。在wi—Fi网络方面,虽然Android建立在Lin—ux内核之上,但是Wi—Fi网络的实现与一般Linux操作系统不一样,下面结合Android2.1的源码,对wi—Fi模块的工作原理进行了分析。2Wi.Fi模块的工作原理络事件:rL竺smN-络事件:L_。—T—NETWORK静NTECII'I:STA_Ⅻ1_ls1Sl;Iq('一LICAE—c0)D一2.1Wi.Fi模块的组成_AcTrlON在Android系统中,应用程序可以使用Wifimanager_1WifiManagerfWifiStateTracker提供的API接口管理wi—Fi的连接及使用情况,比如:A卫IDLI启动或者禁止wi。Fi网络、请求扫描接人点(Acce~lWifiService卜一lWifiMonitorPoint,AP)、返回网络配置参数列表等等。当wi—Fi网匦络被启动或者禁止时,Wifiservice将能过广播方式发出androidwifiWifi—net,——WIFI—STATE—CHANGED—ACTION事件通知上层应l用程序,Wifiservice主要负责对WifiMonitor和wpa~Wi—Fi模块的底层驱动supplicant的进程进行初始化及禁止,并且发出命令给图1wi.R模块的系统组成vcpa—supplicant。WifiMonitor是负责接收wpa—suppli一cant发出的各种事件通知,然后WifiStateTracker广播各种行为。wi—Fi模块的组成如图1所示。在W;.Fi模块的系统组成中Wifimanager主要提供一些API接口,Wifimanager处理及工作的内容大致如下几个方面:(1)返回网络配置的参数列表,参数列表可以查看及更新,并且个别的配置参数可以被修改。(2)建立连接网络及禁止,以及查询有关网络状态的动态信息。(3)扫描无线网络AP,并且根据AP的信息进行连接。收稿日期:20】010—22496成都信息工程学院学报第25卷(4)定义各种Intent组件的行为名称,组件行为是广播来更新wifi状态。wi—Fj模块中的Wifiservice可以通过WifiManager接口处理远程无线wi—操作请求,也可以创建一个WifiMonitor来侦听无线上网相关的事件。WifiStateTracker可以跟踪wi—Fi连接状态。有关的无线网络事件的处理及状态更新都可以通过WifiStateTracker完成。WifiMonitor侦听从wpa—supplicant服务器发出的事件请求,并且处理事件请求然后发送到WifiStateTracker,WifiMonitor独立运行于自己的线程中。Wi