沃Phone应用开发简介.ppt_第1页
沃Phone应用开发简介.ppt_第2页
沃Phone应用开发简介.ppt_第3页
沃Phone应用开发简介.ppt_第4页
沃Phone应用开发简介.ppt_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

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

文档简介

,沃Phone应用开发简介,中国联通virtualULONGAddRef(void)=0;virtualULONGRelease(void)=0;,在TCOM组件中:1.实现派生自TIUnknown的三个纯虚函数;2.添加自身功能方法的实现;,在实现TCOM组件之后,需要将其注册到系统注册表中,这样TCOM运行时才能查找到该组件:1.TG3AppDllEntry.cpp文件中TDllRegisterServer接口负责TCOM组件的注册,TCOM_Srv_RegisterServer是该接口的具体实现;2.TCOM_Srv_UnregisterServer函数负责TCOM组件的去注册。,在实现注册接口之后,还需要实现一个组件库的创建接口TDllGetClassObject,用于创建该TCOM组件对象:1.该接口也在TG3AppDllEntry.cpp中实现,默认是调用TCOM_Srv_GetClassObject,作用就是创建组件库中的组件对象。,创建TCOM对象,包含两种方法,通过TCLSID和接口ID创建TCOM对象,每个TCOM组件类都有一个唯一的TCLSID;每个TCOM接口定义都有一个唯一的TIID。,通过方法枚举器创建TCOM对象,TCLSID是属于TCOM组件类的内部标识,不应该暴露出来;方法枚举器可以仅从TIID创建出TCOM对象;实际开发中常用第2种方法创建TCOM对象。,目录,沃Phone软件平台介绍沃Phone应用开发基础沃Phone应用开发指南GUI系统图形图像OpenGLES数据持久化存储个人信息管理多媒体主屏幕插件系统启动事件文件关联网络浏览器通信技术设备访问,GUI系统,沃PhoneGUI系统是一个多任务、基于事件驱动的系统,用户可以在沃Phone手机上运行多个应用程序,它们拥有独立的进程空间和独立的消息队列;TOPSBuilder为图形化的GUI资源编辑工具;GUI包括两大部分:窗体类和控件类。,GUI系统,沃PhoneGUI应用程序的主窗体都继承TWindow;TWindow具有消息处理能力,需实现消息处理函数EventHandler;采用沃Phone工程向导在VC2008中新建一个空白窗体为例:,窗体类TWindow:,GUI系统,控件一般置于主窗体之上,显示各类信息,并常用于与用户进行交互;沃Phone的所有控件都继承于TCtrl类;这些控件都包含一些基本属性,例如资源ID、类型、名称、是否可用、是否可见、左边界、上边界、宽度、高度、标题等;用户与控件交互时所产生的事件由窗体类EventHandler函数进行处理,在开发时根据需要编写对应处理方法。,控件类TCtrl:,TLabel文字标签,TButton按钮,TEdit文本框,TRadioButton单选按钮,TCheckBox复选框,TCoolBarList列表,图形图像常用工具类,沃Phone图形图像主要讲述的是业界流行的GUI(图形用户接口)和GDI(图形设备接口)之间的关系和使用方法;GDI是提供了程序开发者能够编写与设备无关的图形接口,GUI则是在GDI的基础上封装一套流行的界面接口;常用工具类包括:TWindow、TDC、TCtrlDC、TBitmap;,图形图像屏幕上绘图,应用程序开发者可以直接在TWindow中直接构造TDC对象对屏幕直接绘图。以下我们在屏幕上画点、画线、画多边形、画图片等。,图形图像内存画布绘图,在很多自定义图形界面应用程序中需要用到内存画布。比如需要绘制多张图片叠加的画面,如果直接在屏幕上逐个绘制,会造成比较大的开销。为了避免这种开销,可以采用在内存一个区域建立一块画布,先在内存画布上做好多张图片贴图,在显示到屏幕上。,图形图像图片半透明,图片的半透明实际上就是指图片的像素点可以以一定比例和目标的象素点进行混合,这个混合就是常说的Alpha混合,沃Phone里面支持每个象素点都有自己的混合比例,或者所有象素点都使用统一的混合比例进行混合,甚至可以同时支持这两种模式的混合一起起作用。常用的两种图片半透明显示,一种是自带半透明效果的图片,另一种是不带半透明的位图。自带半透明效图的图片一般指png格式的图片,图本本身自带ALPHA通道,该通道表示了每个象素点的混合比例,图片的显示直接会产生半透明效果。不带透明的位图,需要做一个ALPHA通道处理,再显示到屏幕。,图形图像图片动画效果,从动画的技术上我们可以简单归纳几种,移动式动画、渐变式动画、拉伸缩放动画、翻转动画、变幻动画等。移动式动画也是最简单,直接将一个图片在不同的时间上显示在不同的座标。渐变式动画一般用于表示光照明暗变化效果,在不同的时间里通过ALPHA通道处理显示。接伸缩放动画,描述事物形状的变化,在不同时间里通过位图的不拉伸或缩放参数处理后显示。翻转动画,在不同时间里通过图片的翻转处理显示。变幻动画一般是由几张不相同的图片,但它们之间有潜在的关系,在不同时间里显示不同的图片来达到变化效果。沃PhoneSDK中提供一个带有动图功能的TImage类,它可以轻松帮您完成动画功能。,文件拷贝动画效果,数据持久化存储,文件存储沃Phone支持三种文件操作接口;包括沃Phone系统文件操作接口、标准C文件操作接口、标准C+文件操作接口。,数据库存储DBLite为沃PhoneSDK内置的数据库系统,引用头文件为DBLite.h。DBLite从SQLite移植而来,并添加了进程消息通知的功能。,沃Phone系统文件操作接口:,个人信息管理联系人,联系人接口是采用TCOM组件技术实现,主要提供一套获取联系人各项信息的方法接口,如通过号码查询获取联系人的姓名、邮件地址等信息,也可以通过获取整一个地址本联系人数组取得联系人的信息。,个人信息管理通话记录,通话记录是电话使用者在进行接听,拨打或者拒接电话等和通话有关的操作时系统记录下来的数据,通话记录接口提供的功能使得开发者能够方便地查询通话记录从而可以获取更详细的内容。,个人信息管理日程安排,日程安排是一个用于辅助移动电话使用者进行任务安排的工具,开发者通过使用本接口可以查询到指定月份的日程安排信息。,多媒体媒体播放,头文件声明媒体播放涉及到两个TCOM接口:TCOM_DataType_SysFile和TCOM_MediaPlayer_Method_Play功能说明创建接口通过方法枚举器创建所需的媒体播放接口对象。设置参数创建媒体播放组件对象成功后,需要根据情况,设置一些必要的参数,比如音量大小、声音通道、声音优先级等。开始播放媒体播放接口可以播放文件形式或者内存形式的音视频数据,不管是哪种形式的数据,调用者都应尽量确保其完整性和有效性。获取媒体信息可以通过GetMediaInfo等方法来获取感兴趣的媒体信息。,媒体播放接口提供了对常见音视频格式媒体文件的信息提取、播放以及播放过程中的参数设置和控制功能。,多媒体媒体播放,处理消息在播放过程中,媒体播放组件会通过发送消息的方式,将一些状态的变化通知给使用者。这些消息都定义在TCOM_MediaPlayer_Method.h中,比较重要的几个包括:结束播放在播放过程中,可以随时调用TCOM_MediaPlayer_Method_Play的Stop()方法来结束播放。,多媒体录音接口,录音接口实现了采集声音数据,并将其压缩后保存成文件的功能。录音接口有两种调用方式:1.一种是使用系统预置的录音界面来录制音频文件;2.另一种则只提供音频数据采集、压缩和保存功能,界面由调用者自行实现。,多媒体图片选择接口,图片选择接口的作用是查看某个目录下的图片文件,并从中进行选择。可用于诸如设置背景、设置联系人来电图片等场合。,主屏幕插件,在沃Phone平台中,插件区由多屏构成,用户只需要在主屏幕上左右滑动手指就可以在各屏中相互切换。插件作为主屏幕系统的一部分,可以显示在主屏幕中的任何一屏,并由主屏幕系统进行创建和管理。,主屏幕插件可分为两种:,主屏幕插件,主屏幕插件主要使用了三个TCOM接口:TCOM_Desktop_DataType_PlugIn_BaseTCOM_Desktop_DataType_PlugInTDtpCommander,TCOM_Desktop_DataType_PlugIn_Base为TCOM_Desktop_DataType_PlugIn的基类,主要提供属性设置及获取的声明和定义。TCOM_Desktop_DataType_PlugIn为用户需要实现的接口。TDtpCommander为主屏幕适配器类,由主屏幕系统实现,提供插件与主屏幕的交互。,开发新插件,实现插件接口TCOM_Desktop_DataType_PlugIn;,介绍开发新插件的一些关键步骤:,在构造函数中设置插件的相关属性;,响应OnGetIID()回填插件的GUID;,重载OnCreateAfter函数,设置父窗口的相关属性、创建需要的控件和创建定时器等;,重载响应EventHandler,处理应用退出、重画、定时器、笔消息等系统消息;,重载响应CommandHandle消息,用于处理插件本身、其它应用自定义消息或主屏幕系统消息,重载响应OnPaint,插件利用此函数绘画自身。,重载响应OnHide和OnShow:主屏幕系统在页面切换中会调用插件的这两个函数。如果插件所在的页面从不可见变为可见,将调用OnShow;如果从不可见变为可见,将调用OnHide。,系统启动事件,启动事件功能主要是让应用在系统启动时,响应指定的特定事件或执行一些初始化工作。系统的启动方式包括正常启动、闹钟启动、充电启动。,需包含的头文件使用文件关联功能,需要用到文件关联方法枚举器TCOM_FileAssociateEnum,它在TCOM_Method.h中声明。创建实例枚举方法在创建好枚举器实例后,就可以用它来查找跟指定后缀名关联的方法了:,文件关联,调用方法如果GetMethodCount()返回值大于0,那么就可以通过GetMethodInfo来获取各个方法的信息,或者通过InvokeMethod来调用某个方法。销毁接口,文件关联是指将应用提供的一组操作跟某个特定的文件后缀关联起来,比如对于后缀为MP3的文件,播放器提供了“播放”操作,而短信或者彩信应用则提供了“发送”操作。,拨号上网,拨号上网接口主要是以账户的形式将所有的上网方式(包括GPRS、Wi-Fi和3G)整合在一起,以提供统一的接口调用。用户可以通过该接口来选择账户、获取账户详细信息、拨号上网、断网以及查询网络是否已经连接等功能。,在拨号之前,首先需要选择通过什么账户拨号,即获取账户ID。目前拨号上网主要有两种方式:一是根据账户ID进行拨号;二是用户自己创建一个账户,然后根据账户拨号,拨号成功会返回一个临时账户ID。这里介绍第一种方式:,按定义获取上网管理的账户ID是由分组类别、AP类型、模块索引、和AP自定义账户ID构成。通过接口调用获取用户可以通过调用获取账户或选择账户的接口来获取账户的ID。,获取账户ID,拨号上网,异步拨号,同步拨号,异步拨号是用户先调用异步拨号接口,然后连接管理通过消息的形式告诉用户拨号是否成功,它的特点就是调用接口后能很快的返回,之后根据接收到的消息判断拨号是否成功,能防止用户因调用接口而卡住的现象。,同步拨号是用户调用同步拨号接口后,直到拨号执行完成后才返回的一种拨号方式,它的特点就是返回结果能真正反映拨号是否成功,而无需等待拨号消息了,但它同时有可能会导致用户卡住的现象。,浏览器,浏览器接口主要是提供一套完整的浏览网页接口方法,实现加载URL浏览网页功能,开发者可根据自己的实际需要设定浏览器是否允许拖拽、切换视图比例等。,浏览器,实现浏览器功能的主要步骤如下:,实现自定义消息处理器;,设定网页显示的起始位置;,实例化一个消息处理器对象;,实例化一个浏览器控件对象并指定其消息全局的消息处理器;,加载一个URL并于上面指定的显示区域中显示;,通信技术电话,电话是手机所提供的最基本的一项服务,虽然目前各种移动增值业务层出不穷,但是在一些新业务开发过程中,有时候还需要将电话功能集成进去。沃Phone平台提供四种不同方式的拨号接口,包括普通拨号、编辑拨号、IP拨号和视频拨号,开发者可根据实际业务所需调用不同的电话拨号接口。,通信技术短信,短信是移动电话上比较常用的一个业务功能,本接口主要提供与短信服务相关的一些功能以方便开发者使用。开发者通过调用本接口可以实现短信的发送、保存和打开语音信箱等功能。,通信技术邮件,目前只提供发送邮件功能,涉及的接口包括TCOM_EMail_DataType_Obj和TCOM_EMail_Method_Obj。设置收件人地址SetEMailAddress(pszAddress);设置抄送人地址SetEMailAddressCc(pszAddress);显示收件人地址SetDisplayName(pszAddress);显示抄送人地址SetDisplayNameCc(pszAddress);设置邮件标题SetEmailSubject(szTitle);设置邮件附件SetEmailAttachFile(szPath);设置邮件内容SetEmailText(szContancts);设置发送模式SetSendMode(SEND_MODE_UI)参数:SEND_MODE_UI发送时带界面SEND_MODE_NOUI发送时无界面SEND_MODE_SHOW

温馨提示

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

评论

0/150

提交评论