刘权 刘红 韦启旻 徐强 杨思晨 孙非凡北方工业大学 电子信息工程学院
基于Android移动终端局域网通信设计
刘权 刘红 韦启旻 徐强 杨思晨 孙非凡
北方工业大学 电子信息工程学院
摘要:针对当前基于Android平台手机的现代电子产品在我们生活的每个角落都能见到,有力地推动了社会信息化程度。同时人们对现代电子产品性能和通信沟通的需求。基于Android平台手机的发展趋势,本设计以Android平台手机为核心实现了局域网间通信。
随着信息时代的发展,人们生活节奏的加快,为人们提供便捷生活体验的智能化的移动终端已经成为人们生活中不可缺少的一部分。基于Android的操作系统具有开源特性,使其达到人们的这种需求不再遥远。基于Android的智能移动终端可以更便捷地实现用户端对端的通信。
本系统使用基于Android的操作系统,以实现移动终端的端对端通信。系统以Eclipse Android SDK 及相关的辅助软件作为开发工具,通过JAVA语言编写应用程序,以虚拟机和基于Android操作系统的智能手机作为测试工具,在连接同一局域网的情况下,分别安装两个app的移动设备可以实现相互通信。用户端通过注册,生成用户名和密码,进入后选择服务器IP匹配后即可实现端对端通信;服务器端与用户端匹配后,接收用户端发过来信息同时可以回复给用户端消息。
Android系统架构由Linux Kernel、Android Runtime、Libraries、Application Framework、Applications五部分组成。Android基于Linux 2.6提供核心系统服务,Linux Kernel也可以作为硬件和软件之间的抽象层,它能隐藏具体硬件细节而为上层提供统一的服务。分层的好处就是使用下层提供的服务使上层提供统一的服务,屏蔽本层及以下各层的差异,当本层及以下各层发生了变化不会影响到上层。各层会各尽其职,各层会提供固定的SAP,对于只做应用层研发的不需要深入了解Linux Kernel层就能做出好的APP。Android Runtime包含一个核心库的集合,提供大部分在Java编程语言核心类库中可以用到的功能;Android包含了一个C/C++库的集合,通过Libraries可以供Android系统的各个组件使用;通过Application Framework提供开放的开发平台,Android使开发者能够设计出丰富和新颖的应用程序;Android 通过Applications装配核心应用程序集合,包括电子邮件客户端、SMS程序、日历、地图、浏览器、联系人和其他设置。
本设计基于Android的架构进行设计,采用JAVA语言编写相关程序。
本系统共分两部分,一部分是用户端,另一部分是服务器端。用户端由用户登录模块和消息传输模块组成,用户登录模块由帐号注册模块、密码修改模块和文本输入模块组成;消息传输模块由IP传输模块和消息发送模块组成。服务器端由监听IP连接模块、获取本机IP模块和接收/发送消息模块组成。
局域网的端对端通通信是基于TCP/IP协议的一种通信方式,首先一端会向局域网内的主机发送ARP广播请求,然后主机会根据自身的路由表进行匹配,如果请求中的目的IP与本地IP不匹配则舍弃,如果与本地IP匹配则解析请求获取源地址的MAC地址,并将该地址存入ARP缓存,最后向源地址进行回复,源地址收到回复后获取目的地址,并存入缓存,这样两端就建立起了通信连接,每次通信完成后都会重新开始进行上述过程。
用户通过注册账号,进入消息传输界面,同时用户可以通过修改密码选项修改自己的密码,也可以根据个人喜好,选择记住用户。只有当用户名与密码相对应,用户才能成功登陆;用户成功登陆后,会进入消息传输界面,输入另一端服务器的正确IP,连接成功后会显示绿色的对勾图标,即可实现与另一端的消息收发。点击断开按钮后,即可与另一端断开连接。用户端可以通过如图4.1所示的用户登录界面、如图4.2所示的用户注册界面、如图4.3所示的用户修改密码界面实现用户的注册登录、修改密码等功能。用户与服务器匹配后发送信息界面如图4.4,服务器给用户发信息用户端显示界面如图4.5,用户端与服务器段断开连接后再向服务器端发送信息如图4.6。
图4.1 用户登录
图4.2 用户注册
图4.3 用户密码
图4.4 用户与服务器匹配
图4.5 服务器发给用户
图4.6 用户端与服务器端断开
服务器端的主要功能有获取本设备IP、实时监听服务器端是否与用户端相连接、接收来自用户端发来的消息、向用户端发送消息。服务器端初始界面如图5.1所示,点击creat按钮后会显示服务器端IP,用户端输入此IP与服务器端匹配,匹配成功后界面如图5.2所示;匹配成功后即可收发消息,服务器端收到客户端消息界面如图5.3所示,在服务器端“请输入内容”框中输入消息发送给用户端界面如图5.4所示,服务器端与用户端断开连接系统也进行提示。
图5.1 服务器端使用
图5.2 服务器端开启
图5.3 用户与服务器匹配
图5.4 服务器向客户发信息
本设计基于Android能够实现局域网间端对端通信,保密性较高。持有两个app移动终端在连接相同的局域网并正确匹配后,即可实现端对端即时通信,十分方便。简洁的界面,方便的操作给予使用者全新的体验。系统测试结果也表明, 系统性能稳定,安全可靠,后续可以根据使用者的需求,开发更多的功能。
参考文献
[1]明日科技.Android从入门到精通[M].北京:清华大学出版社,2012.9.
[2]余志龙,陈昱勋,郑明杰等.AndroidSDK开发范例大全(第2版)[M].北京:人民邮电出版社,2010.6.
[3]常建功.零基础学Java(第三版)[M].北京.机械工业出版社,2012.
关键字:Android 手机 局域网 通信