在正文开始之前,我想发发牢骚吧,最近手头的项目太紧,所以那个C++系列很久没有更新,请大家谅解,等到项目完成后,一定会有更多的更新,当然还有发消息给我的朋友,感谢你们的关注,我一定会在五月一一给你们回复~再次感谢!
正文开始:
一、方案背景:
在现在这个时代,Wifi设备的普及正在以迅雷不及掩耳的速度在整个社会中蔓延开来,手机、笔记本电脑、游戏机PSP等……似乎好像要来个全民Wifi!所以,可以预见,未来在短距离、大通讯量的应用上,WIFI还是一个比较不错的平台。
还记得不久前,我前去客户那里做需求调查工作,工作使用的笔记本就直接加入了客户的无线局域网中,但是拿着笔记本走来走去也不太方便,于是,我就带着PPC,用它来做各种记录和调查,当然,有时候也会把一些拜访客户的问题放到PPC上,以免我忘了。每次PPC和PC间的文件同步过程比较痛苦,毕竟是有线连接,我就在想,我是否可以直接把在PPC端搜集到的信息直接发到PC机,我在楼下时,可以从PC机共享的资料中获取文件到PPC,我就不用再跑上楼了(客户那里有好几层)。于是,这个无线文件传输方案在我脑海中逐渐成形。
二、方案介绍:
这个方案主要解决的问题就是要方便、快捷的完成无线局域网内,两个设备(台式机、智能手机)的文件交换。所以,可以看到,此方案有两个显著特点:方便、快捷!
首先,说说方便吧。我也研究过如何让PPC和PC在wifi局域网中共享文件,额,虽然说过程和PC间共享文件差不多,但是也要经过很多设置,比如添加受信的用户,指定此用户是这些文件的可访问者……哎,最后我照着做了一遍,最后由于人品问题,失败!
所以,我们要让用户能够很方便的,把想交换、共享的文件进行一些简单操作,就能让“别人”可以在局域网中看到并获取到!
其次,快捷。其实就是快速传输,一般要在手机端使用的文件,体积都不会很大,所以,这一点倒是很容易做到。在这里我们先不做深入讨论吧。
说到这里,我们来看看方案的技术方面的东西。
第一个进入我脑海的技术方案,就是点对点的通讯。比如:TCP或者UDP。可能是我比较熟悉这两种技术吧,当然,还有熟知的Sync 微软的那一套同步组件,貌似也不错啊!但是,由于我只想简单的实现文件的传输,所以,还是选择了前一种方式!
技术方案决定了,那么来看看,我们需要用它完成一个什么样的业务功能吧。我想最好的解释就是图片,于是,Visio了一下,大致业务场景如下:
PC机共享了一些文件,我拿着PPC通过WIFI可以访问到这些共享文件,然后按需索取到PPC,当然,我也可以把PPC上的文件发送到PC中!
从上面的业务场景来看,我们的系统要完成的功能很明了:
- 在设备间建立连接
- 用户通过PPC选择一个本地/远端文件,进行上传/下载操作
- 在设备间完成数据传输(获取文件列表、传输文件本身……)
- 捕获异常,传回状态结果
- 断开设备间的连接
Ok,至此,貌似我们的整个系统功能大致也就浮出水面鸟。我将在接下来的一篇文章中,讨论详细的系统功能结构等问题,敬请关注。