基于WindowsMobile的手机短信系统的设计与实现_第1页
基于WindowsMobile的手机短信系统的设计与实现_第2页
基于WindowsMobile的手机短信系统的设计与实现_第3页
基于WindowsMobile的手机短信系统的设计与实现_第4页
基于WindowsMobile的手机短信系统的设计与实现_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于Windows Mobile的手机短信系统的设计与实现目 录摘要1关键词1引言11 系统概述11.1开发背景及意义11.2系统开发目标11.3 Windows Mobile开发环境21.3.1 开发工具21.3.2 运行环境22短信系统工作原理综述22.1 Windows Mobile简介22.2 SMS的相关概念32.2.1SMS简介32.2.2 SMS地址32.2.3 SMS Service Center32.2.4 打开SMS服务32.2.5 SMS Message协议42.3 SMS的网络特性53手机短信系统的设计与实现53.1手机短息系统的总体功能模块53.2手机短信系统的概要设

2、计63.2.1发送短信界面设计63.2.2接收短信界面设计63.2.3主界面设计63.3手机短信系统的具体实现63.3.1短信发送的设计与实现63.3.2短信接收的设计与实现103.3.3 主界面的设计与实现134系统测试154.1发送信息界面的测试154.2接收信息界面的测试15总结16致谢16参考文献16英文摘要17基于WindowsMobile的手机短信系统的设计与实现摘要:本项目是一个基于微软发布的Windows Mobile系统的手机短信系统的设计与实现。本项目所采用的开发环境为VS2005,编程语言为VC+。论文概述了实现手机短信系统设计与实现的关键技术与方法。系统有两个主要的功能

3、模块:发送短信模块和接收短信模块。由于Windows CE嵌入式系统的开放源码有限,这个短信系统的成功实现有一定的参考价值。关键词:Windows Mobile; SMS;手机短信系统;VS2005;嵌入式系统引言:随着3G网络的推广智能手机及Phone 版PDA等将具有更加广阔的市场. 移动通信系统将逐渐由提供话音为主的服务发展为以提供数据为主的服务,使得以提供话音为主的传统手机逐渐发展成为融合了PDA(Personal Digital Assistant掌上电脑)、电子商务、娱乐等特性的智能手机1。SMS(Short Message Service短信息服务)是通过手机发送和接收有限长度的

4、文本信息,是智能手机不可缺少的一个功能模块。目前SMS已经被集成到了很多网络标准中,GSM(Global System for Mobile Communications全球移动通信系统)、CDMA(Code Division Multiple Access码分多址)、TDMA(Time Division Multiple Access时分多址)、PHS(Personal Handy-phone System个人手持式电话系统)、PDC(Parking Distance Control停车距离控制系统)等移动网络都支持SMS,使SMS成为一项非常普及的移动数据业务。通过研究智能手机平台的基本工

5、作原理以及无线短信服务(SMS)系统的基本工作原理开发了基于GSM短信息服务平台的短信息系统。短信息业务模型以GSM短信息业务为基础,应用SMPP模型实现短信息业务的运行。结合传统的测试方法及基于嵌入式系统的测试方法对系统进行了多次、反复的测试及完善,最后系统具有较好的连通性,以及内容逻辑正确,业务响应时延符合要求,达到了预期的结果。1 系统概述1.1开发背景及意义从广义上说,智能手机除了具备手机的通话功能外,还具备了PDA的大部分功能,特别是个人信息管理以及基于无线数据通信的浏览器,GPS和电子邮件功能。智能手机为用户提供了足够的屏幕尺寸和带宽,既方便随身携带,又为软件运行和内容服务提供了广

6、阔的舞台,很多增值业务可以就此展开,如:股票、新闻、天气、交通、商品、应用程序下载、音乐图片下载等等。结合3G通信网络的的支持,智能手机的发展趋势,势必将成为一个功能强大,集通话、短信、网络接入、影视娱乐为一体的综合性个人手持终端设备。基于智能手机的优良性能,开发智能手机应用程序也具有了比较广阔的前景。Windows Mobile是十分流行的智能手机操作系统之一,但是开源代码却是有限的。希望通过本项目为以后开发基于Windows Mobile的3G 智能手机积累经验并为其他开发者提供参考。1.2系统开发目标由于Windows Mobile嵌入式系统代码的非开源,参考资料较少。本系统力求实现基本

7、的短信发送与接收功能。为自己积累开发经验,同时为其他手机短信系统开发者提供一定的参考。1.3Windows Mobile开发环境1.3.1 开发工具 VS2005是Visual Studio 2005的缩写。Visual Studio 是微软公司推出的开发环境,是目前非常流行的Windows平台应用程序开发环境。这个版本可以在不同的技术和设备上创建应用程序。可以基于Windows Mobile 2003、Windows CE 5.0和6.0构建应用程序,Windows Mobile 5.0和6.0同时支持Smartphone和Pocket PC。另外,以各种设备和设备类型为目标,还可以利用这些

8、操作系统和相关版本的.NET Compact Framwork的功能。IDE为构建移动应用程序提供了窗体设计器、代码编辑器和调试支持。可以从SmartDevice项目开始,选择目标平台、.NET Compact Framework的目标版本,以及项目模板类型(窗体应用程序、类库、控件等)2。设计Windows Mobile窗体是一个我们熟悉的过程。工具箱中有一组设备控件。可以选择一个控件并将其放置到Mobile窗体中。窗体的外观和行为与目标设备完全一致。1.3.2 运行环境在开发应用程序时,可以在设备模拟器上进行部署和调试。这使我们可以在一个模拟的设备上调试应用程序并观察其行为。VS2005同

9、时发布了用于Smartphone和Pocket PC的基本模拟器。然而,还有20多种设备模拟器可供下载。在模拟器上可以与应用程序交互并调试代码。图1是通过VS2005仿真模拟器模拟出来的一个Pocket PC 2003界面。图1 Pocket PC 2003主界面如果开发时打开的是真实设备,则需要事先安装ActiveSync使之与PC机连接。ActiveSync是一款管理Windows Mobile设备连接、与PC进行数据同步的工具3。实验所用Windows Mobile智能手机设备为HTC Touch Pro型号的智能手机。2短信系统工作原理综述2.1 Windows Mobile简介Win

10、dows Mobile是微软公司专门针对PDA和智能手机类产品开发提出的解决方案,它是一个开放的操作系统。开发者可以基于Windows Mobile平台开发自己的 Windows Mobile应用程序。Windows Mobile操作系统原形为 Windows CE,后开发出适用于手机及其他掌上设备操作系统,之后又将其整合于一起4。Windows Mobile将桌面Windows功能扩展到了移动设备上。基于Windows Mobile、操作系统的智能终端设备分为Smartphone和Pocket PC两个大类。其中Smartphone从外观设计、使用习惯等方面来看,其更像一部电话,同时具备一定

11、的数据管理与处理能力。而Pocket PC的功能更类似于一部个人电脑,有非常强大的数据管理和处理能力,而有部分Pocket PC也加入了电话功能,使其成为新的Pocket PC phone。作为软件巨头微软的掌上版本操作系统,在与桌面PC和Office办公的兼容性方面具有先天的优势,而且WM具有强大的多媒体性能,办公娱乐两不误,让他成为最有潜力的操作系统之一。以商务用机为主,目前市场已显出颓势,最新版本为Windows Phone 7,几乎对旧有的WM系统全盘推翻再造,其应用机型已逐渐上市,不过价格不菲。2.2 SMS的相关概念2.2.1SMS简介 SMS就是通过GSM网络提供的传输有限长度的

12、文本数字或文字信息的服务。这种信息的传输是在GSM手机与手机之间或者手机与其他SME(短信息实体:short Message Eniity)之间通过业务中心进行文字信息收发实施的,其中业务中心是一个独立于GSM网络的业务处理系统,主要功能是存储、提交以及转发短信息,并完成与PSIN等网络的互通,以实现来自其他SME(如:人工台/自动台、各种SP建立的资讯平台等)的短信息的传递。短信息业务是GSM系统提供给手机用户的除了通话服务外的另一种特殊服务,短信息也称作短信息或短信。短信息服务SMS在任何Mobile Phone系列中都能使用。通过短信息服务中心(SMSC)能立即发送或接收短信息。每个短信

13、息最大能发送140Byte即中文70个汉字字符。一旦短信发送后,短信的传递过程是会先到达SMSC,SMSC负责把短信息准确的传递给目标移动设备。如果目标移动设备不可用,SMSC通常将会暂时保留短信息,间隔性地不断尝试发送直到收到短信息成功接收的反馈信息。SMS短信息与发送一个常规E-mail的一个主要区别是发送SMS短息是即时的,类似于寻呼机的方式(但是SMS不能保证传递的时间和确定性)和不需要连接到Internet网络上和邮件服务器上。目前Mobile Phone已经无缝的把SMS短信息函数整合到了系统的信息系统中。使用SMS APIs能在应用程序中收发短信息。2.2.2 SMS地址 几乎所

14、有的SMS API函数都要使用到SMS_ADDRESS结构,它定义了发送或接收的信息的地址信息,结构中定义了类型的地址和定义了与信息相关联的电话号码。SMS_ADDRESS结构如下: Typedef struct sms_address_tagSMS_ADDRESS_TYPE smsatAddressType;TCHAR ptsAddressSMS_MAX_ADDRESS_LENGTH;SMS_ADDRESS,*LPSMS_ADDRESS;smsatAddressType参数是信息地址类型,参数ptsAddress包含了一个零结尾的字符串,内容就是电话号码,字符长度最大为255。2.2.3 S

15、MSC SMSC(SMS Service Center短信息服务中心)是短信息的处理传递中心,当一个新的信息发送出去时,SMSC负责存储、传递和延迟发送。在发送和接收之前,每个设备必须配置SMSC电话号码。2.2.4 打开SMS服务 为了通过SMS服务接收或发送短信息,首先必须要得到下面要提到的一系列函数所需要的信息句柄。要注意到,对于接收短信息,只能在同一时刻拥有一个信息句柄,在手机上该句柄一般被邮件系统tmail进程打开了。得到信息句柄,需要调用SmsOpen函数:HRESULT SmsOpen(const LPCTSTR ptsMessageProtocol, const DWORD d

16、wMessageModes,SMS_HANDLE* const psmshHandle, HANDLE* const phMessageAvailableEvent);参数ptsMessageProtocol是一个包含指定使用的SMS协议的字符串。已经预先定义了几个短信息提供者的类型,每个拥有的各自结构,组成不同信息类型。SMS协议类型支持如表1所示。表1 短信息协议类型SMS协议类型发送/接收描述SMS_MSGTYPE_TEXT两者文本协议。使用TEXT_PROVIDER_SPECIFIC_DATA结构SMS_MSGTYPE_NOTIFICATION接收通知协议SMS_MSGTYPE_WDP

17、两者WDP协议SMS_MSGTYPE_WCMP两者WCMP协议SMS_MSGTYPE_STATUS接收状态信息协议SMS_MSGTYPE_BROADCAST接收广播信息协议SMS_MSGTYPE_RAW接收Raw SMS协议dwMessageModes参数设置已经打开的信息句柄的传输模式,如果需要接收短信息则设置SMS_MODE_RECEIVE,或者如果是发送,那么设置为SMS_MODE_SEND。注意某些西诶仅能支持接收模式,如果尝试打开发送模式SmsOpen函数返回失败。参数psmshHandle应该指向一个接收信息句柄的地址,当函数返回时SMS_HANDLE值会被设置进变量里。最后一个参

18、数phMessageAvailableEvent指向一个Windows事件句柄,当信息到达时事件会利用此事件进行通知。虽然可以使用函数WaitForsingleObject等事件等待函数调用这个句柄,但是不应再使用任何别的事件函数调用此句柄,比如调用SetEvent和ResetEvent函数,它们会扰乱短信息服务引擎,造成不可预知的结果。另外不必调用CloseHandle函数来关闭pshmshHandle句柄,当调用SmsClose函数关闭短信息时系统会关闭它。2.2.5 SMS Message协议 从一个设备发送一条信息到另一个设备,这个过程会使用几个不同的SMS协议处理,它们都有各自定义的

19、数据结构。其中一些仅能用在接收信息中。文本SMS提供者是最普通的用于发送接收短信息的新协议的提供者。文本信息仅包含总共160Byte长度。当使用文本SMS进行处理,可以使用TEXT_PROVIDER_SPECIFIC_DATA结构,结构定义如下:typedef struct text_provider_specific_data_tag DWORD dwMessageOptions; PROVIDER_SPECIFIC_MESSAGE_CLASS psMessageClass; PROVIDER_SPECIFIC_REPLACE_OPTION psReplaceOption; DWORD dw

20、HeaderDataSize; BYTE pbHeaderDataSMS_DATAGRAM_SIZE; / For concatinated messages, only the header from the first segment is returned. BOOL fMessageContainsEMSHeaders; / at least one segment of this message contains EMS headers. Only set if EMS handler installed. DWORD dwProtocolID; / PID of invoming

21、message, or desired PID of outgoing message. Applies only to GSM. Set to SMS_MSGPROTOCOL_UNKNOWN if psReplaceOption is not PSRO_NONE TEXT_PROVIDER_SPECIFIC_DATA;参数dwMessageOptions指定了提供者的不同选项。参数psMessageClass指定了当信息被接收是怎样与SMSC中心相通信。2.3 SMS的网络特性短信收发的大致流程一般为终端用户发起一条短信(MO),上行至短信中心(SMSC),经过处理后再下行到相应的目的终端用户(接收短信MT)。图2说明了短信收发的一般网络特性5。图2 短信收发的一般网络特性 在图2中,假设用户1向用户2发送短消息。首先,用户1MO编辑短信后发送,由最近的电信网发射塔(Comm.Tower)接收后转发到本地短消息中心(SMSC1)(如果用户2和用户1在同一服务区);或者发送到短消息中心(SMSC2)(如果用户2和用户1在同一服务

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论