11.WindowsMobile平台应用与开发初步注意:原创内容,用于交流,严禁商业用途联系:backylee@gmail.com概述:详细分析了WindowsMobile5.0的架构,总结了它的新特性,成功搭建和配置了WindowsMobile5.0开发环境,并在搭建的VisualStudio2005下采用C#语言,开发实现了手机终端无线信号测试软件,从而对基于WindowsMobile平台的软件开发过程有更深入的理解。1.1WindowsMobile系统概述WindowsMobile是Microsoft公司针对手持终端开发的操作平台,其包括底层操作系统WindowsCE及上层驱动和应用等,WindowsMobile的几个版本都内置一系列针对WindowsMobile开发用户应用程序和系统硬件驱动。基于WindowsMobile的移动设备为企业提供了优秀的行业应用平台,它可以提供广泛的可选硬件、强大的开发工具和长效的电池使用时间。基于WindowsMobile的设备让企业用户在外出时仍然可以处理自己的工作,让用户能够通过扩充设备满足不断变化的企业需求。现在,移动用户对数据信息访问的需求增长非常明显。包括Internet在内的新型数据源,可以通过移动的网络连接供给更多用户访问。作为一个开放的操作系统,WindowsMobile为开发人员提供了很多便利。开发人员可以基于WindowsMobile开发自己的WindowsMobile应用程序。WindowsMobile5.0彻底消除了Smartphone和PocketPC以及其他不同的移动设备之间的差距,不论硬件的速度、屏幕分辨率和存储器容量有多大差别,WindowsMobile5.0都可以为其方便地进行定制,以适应各种不同的应用场合。基于WindowsMobile的PocketPC和Smartphone为用户提供了熟悉并且可以自定义的用户应用。1.1.1WindowsMobile家族WindowsMobile商标如图3-1所示。WindowsMobile家族主要包括掌上电脑(PocketPC)、智能手机(SmartPhone)、便携式娱乐中心(MediaCenter)三种,掌上计算机又根据是否有电话模块分为掌上计算机普通版和掌上计算机电话版。图3-1图3-1所示为MicrosoftWindowsMobile商标。图3-2所示为WindowsMobile家族及其特性。(1)掌上计算机(PocketPC)主要的特点是以数据处理为中心,继承了以前2PDA设备的特点,并能方便地处理邮件,PocketPC还带有触摸屏以及可选的完整键盘,非常适合商业应用。掌上计算机通常使用32MB~128MB内存,使用200MHz~600MHz的CPU,能提供流畅的电影播放、幻灯片浏览、文字处理、游戏等。而且,这些能力还在不断提高,在WindowsMobile6.0中,系统支持最高2GB的内存。(2)掌上计算机电话版(PocketPCPhone)在掌上计算机上增加了手机模块,并安装了拨号应用程序,这样在掌上计算机上能完成所有手机的功能,包括电话、短信、彩信服务。(3)智能手机主要的特点是以语音为中心,以电话功能为主,提供键盘和操纵杆输入,所有的功能都能优化为单手操作。智能手机和掌上计算机电话版是典型的3G移动终端实例。(4)便携式娱乐中心主要的特点是以娱乐为中心,配备专门的多媒体设备。有优化的用户界面,但没有触摸屏,通过指定的功能键操作,使用方法和电视操作相似。而且提供视频输出能力,能轻松地与电视、音箱等家用电器进行互联。所有的WindowsMobile系列都是以移动信息为中心的,提供了MicrosoftOutlookMobile软件,通过这些设备可以轻松地收发邮件、短信以及彩信。对于PocketPC来说,里面还预装了WordMobile,ExcelMobile及PowerPointMobile,使得用户可以在手机上处理工作。而且WindowsMobile设备都支持多媒体,都内置安装了多媒体播放软件MediaPlayer以及PocketInternetExplorer浏览器软件。WindowsMobile上开发用户应用,用户可以自由地安装或删除WindowsMobile上的应用,具备非常好的平台扩展性。图3-2WindowsMobile家族及其特性31.1.2WindowsMobile全球市场发展状况WindowsMobile掌上计算机在全球市场有着较高的市场占有率,其中在我国占有率也非常高,产品覆盖48个国家的68个运营商,其中有41家移动终端生产厂商。WindowsMobile具有很好的优势,全球有超过700万的MicrosoftVisualStudio开发人员,有超过38万的WindowsMobile开发人员和超过9000个Microsoft合作伙伴。使用WindowsMobile许可的设备数量每天都在高速增长。1.1.3WindowsMobile5.0的新特性WindowsMobile5.0是基于WindowsCE5.1核心的,主要有以下三个特性。(1)高效率的移动办公能力,WindowsMobile5.0提供了一些用于提升用户工作效率的软件,如直推E-mail(DirectPush),较好地满足了用户特别是移动用户对即时性信息的需求,通过直推E-mail,邮件更新信息会先到达手机。另外,MobileWord和MobileExcel也有很大的改善,可以支持在文档中添加图像和图表,基本上和PC上的Word和Excel功能一致。MobilePowerPoint虽然暂时不支持编辑功能,但作为查看工具,已经可以满足用户会议放映的需求。(2)硬件方面,主要是指对海量存储设备的支持和对永久内存存储的支持。WindowsMobile5.0的设备可以支持以GB为单位的数据,可以存储大容量的音频、视频数据,并且通过对USB2.0的支持,使传输大容量数据更加快捷和方便。WindowsMobile5.0还采用了新的存储结构空间的分配,把用户的重要数据和资料存储在ROM里面,这样即使电池长时间掉电数据也不会丢失。(3)娱乐方面更加丰富,主要体现为游戏和音乐。WindowsMobile5.0支持DirectX和DirectShow,为开发包括3D在内的游戏提供了平台支持。这不仅仅是软件上的支持,还有更多游戏硬件厂商也支持WindowsMobile5.0,开发了适合Mobile5.0的3D硬件加速卡。对音乐来说,WindowsMobile5.0预装了MediaPlayer10,在MediaPlayer10中音乐压缩的体积只有不到MP3格式的一半,因此,WindowsMobile5.0的终端能够存储更多歌曲,并且支持和PC机同步媒体库。最后,除了媒体中心之外,其他的WindowsMobile设备都将电话功能作为基本的功能之一。虽然PocketPC设备分为带有电话功能和不带电话功能两个版本,但对绝大多数用户(尤其是个人用户)来说,他们还是偏爱带有电话功能的PocketPC设备。而对于Smartphone设备来说,电话功能更是设备的固有特征。WindowsMobile5.0还在电话功能上进行了极大的改进。除了更快的连接速度和更高的通话质量外,WindowsMobile5.0还丰富了电话拨号程序的用户界面,给4用户带来了很好的体验。1.1.4MicrosoftActiveSync4.5应用程序为支持WindowsMobile5.0的发布,Microsoft公司也发布了新版本的ActiveSync,目前最新版本是ActiveSync4.5,支持USB2.0、支持海量数据的传输,并且增强了对多媒体数据的同步支持。在WindowsMobile5.0的设备应用中,可以利用ActiveSync作以下操作:(1)同步移动设备和PC机的文件、音乐或者其他数字媒体;(2)通过PC机的网络与ExchangeServer进行Outlook数据的信息同步;(3)添加或删除移动设备中的应用程序;(4)PC机与移动设备共享对方的网络资源。ActiveSync的应用非常简单,用户可以通过界面友好的同步设置向导来完成终端设备与ExchangeServer或PC之间的信息同步。在PC端安装好ActiveSync4.5之后,可以选择通过串行电缆、USB电缆、蓝牙或者红外线把移动设备和PC连接起来。连接方法如下:(1)串行电缆指通过串行电缆将移动设备和PC机的USB端口建立连接;(2)USB电缆是指通过USB2.0接口将移动设备和PC机的USB端口建立连接;蓝牙和红外线都是无线连接的方法,两者不需要更换电缆或适配器,所以在多台设备之间切换时,此方法具有一定优势,其中由于蓝牙的传输速度和相对距离都比红外有绝对优势,所以蓝牙连接的方式更为普及;在通过ActiveSync连接后,终端设备可以通过PC端网络环境进行网络访问。1.1.5.NETCompactFramework简介.NETCompactFramework是.NETFramework的精简版,它独立于硬件的环境,可用于在资源受限制的计算设备上运行程序,这些设备包括类似PocketPC的个人数字助理(PDA)、移动电话、机顶盒、自动计算设备和用WindowsMobile.NET操作系统生成的定制嵌入设备。.NETCompactFramework是.NETFramework类库的子集,还包含专门为它设计的类。它继承了公共语言运行库和托管代码执行的.NETFramework全功能版的体系结构。.NETCompactFramework提供以下主要功能:(1)运行独立于硬件和操作系统的程序;(2)支持常见的网络协议,并与XMLWebservices无缝连接;5(3)为开发人员提供一种模型,使他们的应用程序和组件面向各种设备或面向具体某种设备;(4)提供设计和优化有限系统资源的优点;(5)使用实时编译获得生成本机代码时的最佳性能;(6)支持通过ADO.NET访问SQLMobile。.NETCompactFramework继承.NETFramework全功能版的公共语言运行库体系结构用于运行托管代码。它提供与设备的WindowsMobile操作系统的互操作性,应此,用户能够访问本机函数并将最喜欢的本机组件集成到应用程序中。.NETCompactFramework平台结构如图3-3所示。图3-3.NETCompactFramework平台结构1.2VisualStudio2005简介WindowsMobile5.0SDK和.NETCompactFramework为移动设备应用程序的开发提供了基本的原材料,然而要形成完善、高效的Mobile解决方案,还需要强大的开发工具的支持。VisualStudio2005是Microsoft推出的最新的解决方案开发平台,它为ASP.NETWeb应用程序、XMLWebServices、桌面应用程序和智能(移动)设备应用程序的开发提供了完善的开发工具。无论是使用VisualBasic、VisualC++、VisualC#还是VisualJ#语言,都可以在同一个集成开发环境中完成开发任务,并且还可以开发跨语言的解决方案。本文的软件开发介绍以及下面的软件开发实例都是在VisualStudio2005中6文版中开发的。1.开发环境概况用户界面打开如图所示的VisualStudio2005开发环境。其用户界面由菜单栏、工具栏、各种各样的工具窗口以及工作区构成。刚开始打开,会出现初始页。图3-5VisualStudio2005开发环境2.支持的项目类型在VisualStudio2005中,可以使用各种语言在各种设备上开发应用程序,并混合各种应用程序形成强大的解决方案。使用的语言不同、针对的目标平台不同,就形成了各种不同的项目类型。在一个较高的层次上,VisualStudio2005将应用程序分成两大类,即客户端项目和ASP.NETWeb项目。客户端项目通过依次选择“文件”/“新建”/“项目”菜