SyncML参考工具包
工具包在XML语言和SyncML之间起到桥梁的作用
5.1使用 SyncML 工具包
一个缓冲区,存储SyncML编码可以选择如下中一种 ...
可以只使用一个工作空间
可以为一个应用程序分配一个工作空间
把 in 和 out 分成两个工作空间
5.2 使用SyncML工具包的工作空间 当同步开始,工作空间被创建: instanceOptions.encoding = SML_WBXML;
instanceOptions.workspaceName ="MyWorkspace";
instanceOptions.workspaceSize =20000;
callbacks.addCmdFunc = &handleAddCmdFunc;
...rc = smlInitInstance(callbacks,
instanceOptions,
&instanceID);
5.3 使用SyncML工具包解析器
体积小而且经过了优化处理(代替 DOM XML 解析器)支持以下格式:
XML
WBXML
回调函数将把解析后的信息送到应用程序,开始解析SyncML :
smlProcessData(instanceID, // pass the instance
SML_ALL_COMMANDS, // parse entire Msg
pUserData); // a void ptr
5.4 使用工具包编码器
需要编码的信息要经过Toolkit.
pAddStruct->elementType = SML_PE_ADD;
pAddStruct->cmdID = ... ;
pAddStruct->itemList = ... ;
pAddStruct->cred = ... ;
smlAddCmd(instanceID, pAddStruct);
5.5 内容与通信
5.5.1整合负载
解析、编码嵌入式数据格式
vCard
vCalendar
....
数据库接口
Lotus Domino
Outlook
DB2
...
5.5.2 发布同步信息
传输绑定
HTTP
OBEX (Infrared)
WSP
Floppy Disk