symbian mtm操作
2010-08-20 01:50:00 来源:WEB开发网MTM ==> Message Type Modules
一、消息存储基本知识:
SymbianOS提供的消息传送架构也是基于Client/Server机制,Server端负责管理手机上的各种消息,在进行消息相关操作之前我们需要了解SymbianOS是如何组织和存储消息的。
手机中的各种消息都是以数据项(Entry)形式供程序操作,数据项有4种类型,SymbianOS为每种数据项提供了相应的常量标识UID,这些UID保存在msvuids.h文件中:
1、文件夹类型,对应常量UID为KUidMsvFolderEntry,和PC上的文件夹系统一样,每个文件夹可以包含其它数据项也可能是其它数据项的子数据项。
2、消息类型,对应常量UID为KUidMsvMessageEntry,它表示数据项是一条消息。
3、附件类型,对应常量UID为KUidMsvAttachmentEntry,它表示某条消息的附件。
4、服务类型,对应常量UID为KUidMsvServiceEntry,服务数据项包含某个消息服务的配置信息,在一般情况还拥有通过该服务收发的消息数据项。
除了上面提到的四种类型UID还有常用到的UID是KUidMsvRootEntry(msvids.h),它指的是根数据项,根数据项包含了4个标准文件夹数据项,分别是收件箱(KMsvGloballnBoxIndexEntryld),发件箱(KMsvgGlobalOutBoxIndexEntryld)、草稿箱(KMsvDraftEntryld)和已发送项(KMsvSentEntryld),另外根数据项下面还包含有各种消息服务项.
SymbianOS中的消息服务器负责保存各种类型的数据项,这里有两个基本概念需要了解:消息存储和消息索引。消息存储保存了数据项的数据,保存的数据格式取决于消息服务,服务数据项使用消息存储保存服务配置信息,文件夹数据项不使用消息存储(即存储为空),Symbian提供了CMsvStore类来访问数据项的消息存储;为了节省内存和快速检索消息,消息服务器把数据项的一些概要信息(标题,日期,类型,ID等)写到消息索引中,当消息服务器启动时索引装载到RAM中直到消息服务器关闭,Symbian提供了TMsvEntry类表示数据项索引。
操作消息常用的类和数据类型:
CMsvSession:该类代表客户端(客户端MTM、用户接口MTM或者客户端消息应用程序)与消息服务器端的通讯通道即C/S架构中客户端与消息服务器的回话。每一个客户端线程对应一个该类的实例,使用它获得下面将要提到的CMsvEntry上下文对象。一个消息客户端应用必须在正常使用任何MTM或CMsvEntry对象前,使用OpenSyncL()或者OpenASyncL()来新建立一个Session对象。
更多精彩
赞助商链接