CN103207781B - A kind of WPRT of utilization component layer realizes the synchronous method of pim data - Google Patents
A kind of WPRT of utilization component layer realizes the synchronous method of pim data Download PDFInfo
- Publication number
- CN103207781B CN103207781B CN201310095404.9A CN201310095404A CN103207781B CN 103207781 B CN103207781 B CN 103207781B CN 201310095404 A CN201310095404 A CN 201310095404A CN 103207781 B CN103207781 B CN 103207781B
- Authority
- CN
- China
- Prior art keywords
- layer
- wprt
- synchronization
- data
- synchronization engine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 15
- 230000001360 synchronised effect Effects 0.000 title 1
- 238000012790 confirmation Methods 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 2
- 230000003993 interaction Effects 0.000 abstract 2
- 230000002688 persistence Effects 0.000 abstract 1
- 238000011161 development Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
Landscapes
- Information Transfer Between Computers (AREA)
- Telephonic Communication Services (AREA)
Abstract
一种利用WPRT组件层实现PIM数据同步的方法,能够高效的解决在Windows?Phone平台下对用户PIM数据的同步问题。其方法为:(1)在应用程序层主要负责同用户的交互和数据持久化工作,以及利用WPRT层提供的接口向底层同步引擎注入相关数据供其运行使用;(2)WPRT组件层作为整体架构中的中间层,向下负责封装数据同步引擎并向上对应用程序层提供接口供其调用;(3)基于原生态C++开发的数据同步引擎主要在WPRT组件层的控制下负责生成SyncML同步报文。本发明采用WPRT组件层与基于原生态C++开发的SyncML同步引擎进行交互的方式,提高了效率,且核心模块能对任何基于Windows?Phone8平台开发的应用程序提供SyncML同步支持。
A method for realizing PIM data synchronization by using the WPRT component layer, which can efficiently solve the problem in Windows? Synchronization of user PIM data on the Phone platform. The method is: (1) The application layer is mainly responsible for the interaction with the user and data persistence, and uses the interface provided by the WPRT layer to inject relevant data into the underlying synchronization engine for its operation; (2) The WPRT component layer as a whole The middle layer in the architecture is responsible for encapsulating the data synchronization engine downwards and providing an interface for the application layer to call; (3) The data synchronization engine developed based on native C++ is mainly responsible for generating SyncML synchronization reports under the control of the WPRT component layer arts. The present invention adopts the mode of interaction between the WPRT component layer and the SyncML synchronization engine developed based on the original ecological C++, which improves the efficiency, and the core module can be used for any Windows-based? Applications developed on the Phone8 platform provide SyncML synchronization support.
Description
技术领域technical field
本发明涉及一种在WindowsPhone平台上实现用户个人信息管理(PersonalInformationManagement,PIM)数据同步的方法,尤其涉及一种利用WindowsPhone运行时组件(WindowsPhoneRuntime,WPRT)同基于原生态C++(NativeC++)开发的SyncML同步引擎进行交互的方法。The present invention relates to a method for realizing user personal information management (Personal Information Management, PIM) data synchronization on the WindowsPhone platform, in particular to a method for synchronizing using WindowsPhone runtime components (WindowsPhoneRuntime, WPRT) with SyncML developed based on native C++ (NativeC++) The way the engine interacts.
背景技术Background technique
在WindowsPhone平台下,由于微软对安全性的考虑,PIM数据在该平台下的同步一直存在一定的瓶颈,在微软2012年10月宣布最新的WindowsPhone8版本支持NativeC++之前,市场上一直没有支持PIM数据同步的产品。SyncML(SynchronizationMarkupLanguage,同步标记语言)是一种开放性的由国际标准化组织OMA(OpenMobileAlliance,开放移动联盟)制定的国际工业标准数据同步协议。以SyncML数据同步协议作为载体,将本机中的PIM数据(诸如名片夹、日历等)转换为国际通用的vCard、vCalendar等标准格式进行数据同步,是PIM数据同步的常规做法。Under the WindowsPhone platform, due to Microsoft’s security considerations, there has always been a certain bottleneck in the synchronization of PIM data under this platform. Before Microsoft announced in October 2012 that the latest WindowsPhone8 version supports NativeC++, the market has not supported PIM data synchronization. The product. SyncML (SynchronizationMarkupLanguage, Synchronization Markup Language) is an open international industry standard data synchronization protocol developed by the International Organization for Standardization OMA (OpenMobileAlliance, Open Mobile Alliance). Using the SyncML data synchronization protocol as a carrier, it is a common practice for PIM data synchronization to convert the PIM data (such as business card holders, calendars, etc.) in the machine into internationally accepted standard formats such as vCard and vCalendar for data synchronization.
到目前为止,在主流的操作系统如IOS、Android中已经存在一些产品支持在该平台中的本机PIM数据同步,但在WindowsPhone平台下,由于之前的系统版本在开发接口、开发语言等方面的限制,使得无法利用基于原生态C++开发高效SyncML同步引擎,而被迫选择使用C#等托管语言进行重新开发,严重影响系统运行效率且消耗大量的人力物力。So far, there are already some products in mainstream operating systems such as IOS and Android that support native PIM data synchronization on this platform. Restrictions make it impossible to develop an efficient SyncML synchronization engine based on native C++, and are forced to choose to use C# and other managed languages for redevelopment, which seriously affects the operating efficiency of the system and consumes a lot of manpower and material resources.
发明内容Contents of the invention
本发明的目的是为了解决在WindowsPhone平台上的用户PIM数据同步问题,摒弃了重新开发数据同步引擎且运行效率低下的工作思路,而提出一种采用WPRT组件层同基于原生态C++开发的SyncML同步引擎进行交互的方法。The purpose of the present invention is to solve the problem of user PIM data synchronization on the WindowsPhone platform, abandoning the working idea of re-developing the data synchronization engine and low operating efficiency, and proposing a SyncML synchronization based on the original ecological C++ development using the WPRT component layer The way the engine interacts.
为了实现上述的目的,本发明采用了如下技术方案:In order to achieve the above-mentioned purpose, the present invention adopts following technical scheme:
一种利用WPRT组件层实现PIM数据同步的方法,其特征在于:A method utilizing WPRT component layer to realize PIM data synchronization, characterized in that:
1)获取存储于应用程序对应数据库中的设备管理(DeviceManagement,DM)信息,并通过WPRT层向应用程序层提供的接口注入原生C++层的同步引擎中;1) Obtain the device management (Device Management, DM) information stored in the corresponding database of the application, and inject the interface provided by the WPRT layer to the application layer into the synchronization engine of the native C++ layer;
2)根据应用程序层注入的信息,由WPRT层控制同步引擎生成包含本机配置信息的初始化SyncML报文,并反馈给应用程序层供其发送;2) According to the information injected by the application layer, the WPRT layer controls the synchronization engine to generate an initial SyncML message containing local configuration information, and feeds back to the application layer for sending;
3)应用程序层将接收到的服务器能力报文通过WPRT层提供的接口注入同步引擎,并由WPRT层控制同步引擎进行分析以供后续工作使用;3) The application layer injects the received server capability message into the synchronization engine through the interface provided by the WPRT layer, and the WPRT layer controls the synchronization engine to analyze for subsequent work;
4)在应用程序层中将本机中经过分析筛选后的同步项(如名片、日历)数据通过WPRT层提供的接口注入同步引擎,并由WPRT层启动同步引擎循环生成本机数据报文并反馈给应用程序层,直至全部数据报文生成完毕;4) In the application layer, the analyzed and filtered synchronization items (such as business cards, calendars) data in the machine are injected into the synchronization engine through the interface provided by the WPRT layer, and the synchronization engine is started by the WPRT layer to generate the local data message and send Feedback to the application layer until all data packets are generated;
5)应用程序层循环调用WPRT层接口获取生成的本机数据报文并发送。直至检测到所有本机数据报文已生成完毕,由WPRT层控制同步引擎在报文中添加</Final>标记并发送;5) The application layer cyclically calls the WPRT layer interface to obtain and send the generated local data packets. Until it detects that all local data messages have been generated, the WPRT layer controls the synchronization engine to add the </Final> tag to the message and send it;
6)应用程序层将服务器反馈的确认报文通过WPRT层提供的接口注入同步引擎,并由WPRT层控制同步引擎分析并生成请求服务器数据报文,然后反馈给应用程序层供其发送;6) The application layer injects the confirmation message fed back by the server into the synchronization engine through the interface provided by the WPRT layer, and the WPRT layer controls the synchronization engine to analyze and generate a request server data message, and then feeds back to the application layer for sending;
7)应用程序层循环接收服务器返回的数据报文,并通过WPRT层提供的接口注入同步引擎进行分析处理,只要同步引擎没有检测到</Final>标志,WPRT层便会持续通知应用程序层接收服务器数据报文;7) The application layer cyclically receives the data packets returned by the server, and injects them into the synchronization engine through the interface provided by the WPRT layer for analysis and processing. As long as the synchronization engine does not detect the </Final> mark, the WPRT layer will continue to notify the application layer to receive server datagram;
8)应用程序层调用WPRT层提供的接口获取同步引擎处理后的服务器数据项集合,在应用程序层进行处理后存储到本机对应的数据库中,并经过一定的筛选策略对本机数据进行更新;8) The application layer calls the interface provided by the WPRT layer to obtain the set of server data items processed by the synchronization engine, and stores them in the corresponding database of the machine after processing at the application layer, and updates the data of the machine through a certain screening strategy;
9)完成接收服务器数据报文后,应用程序层调用WPRT层提供的接口生成同步完成确认报文并反馈给服务器;9) After receiving the server data message, the application layer calls the interface provided by the WPRT layer to generate a synchronization completion confirmation message and feed it back to the server;
10)应用程序层调用WPRT层提供的接口将将服务器返回的同步完成报文注入同步引擎,完成数据同步全过程。10) The application layer calls the interface provided by the WPRT layer to inject the synchronization completion message returned by the server into the synchronization engine to complete the whole process of data synchronization.
与现有技术相比,本发明具有如下创新点:Compared with the prior art, the present invention has the following innovations:
1.采用WPRT组件层与基于原生态C++开发的SyncML同步引擎进行交互的方式,有效利用了基于原生态C++开发的SyncML同步引擎的工作高效性,节省了珍贵的手机系统资源;1. The WPRT component layer is used to interact with the SyncML synchronization engine developed based on the original ecological C++, which effectively utilizes the work efficiency of the SyncML synchronization engine developed based on the original ecological C++ and saves precious mobile phone system resources;
2.通过采用WPRT组件层对基于原生态C++开发的SyncML同步引擎进行封装,能够以独立的静态库或动态链接库的形式对任何基于WindowsPhone8平台开发的应用程序提供SyncML同步支持。2. By using the WPRT component layer to encapsulate the SyncML synchronization engine developed based on native C++, it can provide SyncML synchronization support for any application developed on the WindowsPhone8 platform in the form of an independent static library or dynamic link library.
附图说明Description of drawings
图1是本发明方法的工作流程示意图。Fig. 1 is a schematic diagram of the workflow of the method of the present invention.
图2是本发明方法的整体架构示意图。Fig. 2 is a schematic diagram of the overall architecture of the method of the present invention.
具体实施方式Detailed ways
本发明方法的基本思想是利用WPRT组件层实现对基于原生C++开发的数据同步引擎的控制,并能够以独立的静态库或动态链接库的形式向用户接口层提供支持。The basic idea of the method of the invention is to use the WPRT component layer to realize the control of the data synchronization engine developed based on native C++, and to provide support to the user interface layer in the form of an independent static library or a dynamic link library.
参照图1,本发明方法包括如下工作步骤:With reference to Fig. 1, the inventive method comprises following working steps:
(1)准备工作:使用一台搭载WindowsPhone8操作系统的物理设备或者支持WindowsPhone8Emulator的机器作为工作平台;使用VisualStudio2012作为集成开发环境;(1) Preparatory work: use a physical device equipped with WindowsPhone8 operating system or a machine that supports WindowsPhone8Emulator as the working platform; use VisualStudio2012 as the integrated development environment;
(2)应用程序层通过WPRT层提供的接口,将应用程序相关能力的配置信息注入同步引擎,有关应用程序的配置信息如表1所示。(2) The application layer injects the configuration information of the application-related capabilities into the synchronization engine through the interface provided by the WPRT layer. The configuration information of the application is shown in Table 1.
表1.应用程序配置信息表Table 1. Application configuration information table
(3)分析并筛选本机的同步数据项,并将数据通过WPRT层接口注入同步引擎,用于生成数据同步报文,并返回给应用程序层供其发送;(3) Analyze and filter the synchronization data items of the machine, and inject the data into the synchronization engine through the WPRT layer interface to generate data synchronization messages, and return them to the application layer for sending;
(4)发送完毕后,将服务器反馈的确认报文通过WPRT层接口注入同步引擎生成服务器数据请求报文,并发送给服务器;(4) After sending, inject the confirmation message fed back by the server into the synchronization engine through the WPRT layer interface to generate a server data request message and send it to the server;
(5)应用程序层循环接收服务器数据报文,并将每次接收到的报文通过WPRT层接口注入同步引擎用于生成确认报文,再反馈给服务器;(5) The application layer cyclically receives server data messages, and injects each received message into the synchronization engine through the WPRT layer interface to generate a confirmation message, and then feeds it back to the server;
(6)待接收服务器数据报文完毕后,由应用程序层通过WPRT层提供的接口获取本次同步服务器返回的数据项,并根据分析比较策略对本机的数据进行添加或更新操作;(6) After receiving the data message from the server, the application layer obtains the data item returned by the synchronization server through the interface provided by the WPRT layer, and adds or updates the data of the machine according to the analysis and comparison strategy;
(7)最后,由WPRT层控制同步引擎生成同步完成确认报文并由应用程序层发送给服务器,至此,同步全过程完毕。(7) Finally, the WPRT layer controls the synchronization engine to generate a synchronization completion confirmation message and sends it to the server by the application layer. So far, the entire synchronization process is completed.
以上结合附图对本发明的具体实施方式做了说明,但这些说明不能被理解为限制了本发明的范围,凡在本发明的原则和精神之内所作的任何修改、等同替换和改进等,均就包含在本发明的保护范围之内。The specific implementation manners of the present invention have been described above in conjunction with the accompanying drawings, but these descriptions cannot be interpreted as limiting the scope of the present invention, and any modifications, equivalent replacements and improvements made within the principles and spirit of the present invention are all It is included within the protection scope of the present invention.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310095404.9A CN103207781B (en) | 2013-03-23 | 2013-03-23 | A kind of WPRT of utilization component layer realizes the synchronous method of pim data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310095404.9A CN103207781B (en) | 2013-03-23 | 2013-03-23 | A kind of WPRT of utilization component layer realizes the synchronous method of pim data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103207781A CN103207781A (en) | 2013-07-17 |
CN103207781B true CN103207781B (en) | 2015-11-18 |
Family
ID=48755013
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310095404.9A Expired - Fee Related CN103207781B (en) | 2013-03-23 | 2013-03-23 | A kind of WPRT of utilization component layer realizes the synchronous method of pim data |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103207781B (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1744462A (en) * | 2004-08-31 | 2006-03-08 | 华为技术有限公司 | A SyncML Synchronization Request Redirection Method |
CN1976275A (en) * | 2006-12-15 | 2007-06-06 | 深圳市戴文科技有限公司 | Data synchronizing system and method |
CN1984176A (en) * | 2006-05-30 | 2007-06-20 | 华为技术有限公司 | Server and system for managing personal information and synchronization for controlling information |
CN101350839A (en) * | 2008-09-22 | 2009-01-21 | 北京立通无限科技有限公司 | Method, apparatus and system for implementing data synchronization of mobile terminal PIM service |
KR20110097117A (en) * | 2010-02-24 | 2011-08-31 | 계명대학교 산학협력단 | Mobile terminal and method for data synchronization |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7734828B2 (en) * | 2007-06-12 | 2010-06-08 | Palm, Inc. | Data synchronization transparent to application |
-
2013
- 2013-03-23 CN CN201310095404.9A patent/CN103207781B/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1744462A (en) * | 2004-08-31 | 2006-03-08 | 华为技术有限公司 | A SyncML Synchronization Request Redirection Method |
CN1984176A (en) * | 2006-05-30 | 2007-06-20 | 华为技术有限公司 | Server and system for managing personal information and synchronization for controlling information |
CN1976275A (en) * | 2006-12-15 | 2007-06-06 | 深圳市戴文科技有限公司 | Data synchronizing system and method |
CN101350839A (en) * | 2008-09-22 | 2009-01-21 | 北京立通无限科技有限公司 | Method, apparatus and system for implementing data synchronization of mobile terminal PIM service |
KR20110097117A (en) * | 2010-02-24 | 2011-08-31 | 계명대학교 산학협력단 | Mobile terminal and method for data synchronization |
Non-Patent Citations (2)
Title |
---|
基于Windows Mobile的PIM系统的研究与实现;周雄;《万方学位论文全文数据库》;20070814;全文 * |
基于Windows Mobile的手机联系人备份系统设计;谷旭等;《硅谷》;20120421(第20期);53-54页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103207781A (en) | 2013-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102710593B (en) | A message distribution method, device and system in graph aggregation | |
WO2017088509A1 (en) | Page customization method and device | |
US8914809B1 (en) | Message broker system and method | |
CN108989189B (en) | Message pushing method based on enterprise WeChat | |
CN106990966A (en) | Mobile terminal cross-platform Development Framework and development approach based on front end frame | |
CN104717179B (en) | A kind of processing method and processing device of communication service | |
CN105005568B (en) | Web page front end processing device and method based on template | |
CN108874464A (en) | Middleware automatically scanning assembly method, device and storage medium | |
CN104572089B (en) | The method and apparatus for generating Android installation kit | |
CN101976199A (en) | Object-oriented middleware distributed system development platform | |
KR102066802B1 (en) | Business processing method and device | |
CN107977260A (en) | Task submits method and device | |
CN102375738B (en) | A kind of apparatus and method of mobile terminal data management | |
CN104778051A (en) | Skin change method and system commonly used in iOS (Internet Operating System) and Android system | |
CN103347079A (en) | Method and mobile device for schedule event synchronization | |
CN103561113B (en) | The generation method and device of Web Service interface | |
CA2543557A1 (en) | System and method for producing notification based web services | |
CN103207781B (en) | A kind of WPRT of utilization component layer realizes the synchronous method of pim data | |
CN105447068A (en) | SAP system based dynamic report generation method and system | |
CN102523271B (en) | Terminal and communication method and system thereof | |
CN112104544A (en) | Method and device for sending dynamic mail based on Freemarker | |
CN107528839A (en) | The collocation method and device of a kind of interface packets | |
CN108694040B (en) | Call processing method and device and communication system | |
CN107977380B (en) | Method and device for generating page | |
CN116466915A (en) | MVP architecture-based iOS development framework construction method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20151118 Termination date: 20180323 |