数据同步实现方法与流程

文档序号:12039508阅读:210来源:国知局
数据同步实现方法与流程
本发明涉及通信技术领域,特别是涉及一种数据同步实现方法和系统。

背景技术:
现有移动作业客户端软件在进行数据同步时一般采用GPRS(GeneralPacketRadioService,通用分组无线服务技术)通讯或WiFi(无线技术)通讯技术,移动作业客户端向服务端发送同步请求,并接收服务端返回的同步数据,使用这些通讯技术的移动作业客户端虽然能够在大多安全环境下正常地进行数据同步,却不能满足对于网络通讯安全要求严格的行业进行同步通讯,例如电力行业,由于考虑到数据传输安全问题,一般不允许使用WiFi通讯技术,而且,考虑到目前移动作业客户端运行的网络环境的复杂性,甚至有一些移动作业客户端的运行的环境也不能采用GSM(GlobalSystemofMobilecommunication,全球移动通讯系统)或者第三代移动通信技术网络(即也不允许GPRS通讯),此时,移动作业客户端同步数据只能通过USB(UniversalSerialBUS,通用串行总线)数据线进行,但在移动作业客户端没有root权限(Linux操作系统中最高管理员权限)或者在PC(personalcomputer,个人计算机)端没有网络共享权限时,不能实现移动作业客户端移动作业客户端进行数据同步。

技术实现要素:
本发明的目的在于提供一种数据同步实现方法和系统,在移动作业客户端无法使用GSM和WiFi通讯的情况下,且在在移动作业客户端没有root权限(Linux操作系统中最高管理员权限)或者在PC端没有网络共享权限时,也能实现移动作业客户端的数据同步,以保证数据传输的安全性。本发明的目的通过如下技术方案实现:一种数据同步实现方法,包括如下步骤:第一终端模块从与PC端建立USB连接的移动作业客户端中确定目标移动作业客户端,通过所述目标移动作业客户端对应的USB连接获取所述目标移动作业客户端的设备序列号;所述第一终端模块根据所述设备序列号确定第二终端模块已启动时,建立端口转发链路;所述第一终端模块基于所述端口转发链路建立所述第一终端模块和所述第二终端模块之间的长连接;所述第一终端模块和所述第二终端模块通过所述长连接进行所述目标移动作业客户端到PC端连接的服务端的同步请求以及所述服务端到所述目标移动作业客户端的同步数据的转发;其中,所述第一终端模块设置在所述PC端中,所述第二终端模块设置在所述目标移动作业客户端中。一种数据同步实现系统,包括设置在PC端的第一终端模块和设置在移动作业客户端的第二终端模块,所述第一终端模块包括序列号获取单元、链路建立单元、连接建立单元、转发单元,其中:所述序列号获取单元用于从与PC端建立USB连接的移动作业客户端中确定目标移动作业客户端,通过所述目标移动作业客户端对应的USB连接获取所述目标移动作业客户端的设备序列号;所述链路建立单元用于根据所述设备序列号确定所述第二终端模块已启动时,建立端口转发链路;所述连接建立单元用于基于所述端口转发链路建立所述第一终端模块和所述第二终端模块之间的长连接;所述转发单元用于将接收到的同步请求转发到所述PC端连接的服务端,还用于在接收所述服务端根据所述同步请求获得并返回的同步数据,经所述长连接向所述第一终端模块发送所述同步数据;所述第二终端模块用于通过所述长连接向所述转发单元发送服务请求,还用于接收所述请求数据。依据上述本发明的方案,其是PC端中设置的第一终端模块从与PC端建立USB的移动作业客户端中确定目标移动作业客户端,通过该目标移动作业客户端对应的USB连接获取该目标移动作业客户端的设备序列号,在基于所述设备序列号确定第二终端模块已启动时,建立端口转发链路,并基于所述端口转发链路建立所述第一终端模块和所述第二终端模块之间的长连接,则所述第一终端模块和所述第二终端模块通过所述长连接进行所述目标移动作业客户端到PC端连接的服务端的同步请求以及所述服务端到所述目标移动作业客户端的同步数据的转发,即实现目标移动作业客户端的数据同步,且本发明的目标移动作业客户端的数据同步的实现方式不依赖于移动作业客户端的root权限,也不依赖于PC端有网络共享权限时,而且整个通讯过程可以只在PC端和服务端所在的内网中进行,保证了数据同步的安全性,同时,由于本方案不依赖于GPRS通讯或者WiFi通讯,因而不会受移动蜂窝信号衰弱等环境因素的影响,保证了数据同步的稳定性。附图说明图1为本发明的数据同步实现方法实施例的流程示意图;图2为本发明的数据同步实现系统实施例的结构示意图。具体实施方式下面结合实施例及附图对本发明作进一步阐述,但本发明的实施方式不限于此。参见图1所示,为本发明的数据同步实现方法实施例的流程示意图。如图1所示,本实施例中的数据同步实现方法,包括如下步骤:步骤S101:第一终端模块从与PC端建立USB连接的移动作业客户端中确定目标移动作业客户端,通过所述目标移动作业客户端对应的USB连接获取所述目标移动作业客户端的设备序列号,其中,所述第一终端模块设置在所述PC端中;移动作业客户端的USB接口连接USB数据线,再经由USB数据线连接到PC端,建立了移动作业客户端和PC端之间的USB连接,这样,移动作业客户端和PC端之间建立了物理连接,其中,移动作业客户端的个数可以是一个或者多个,目标移动作业客户端是移动作业客户端中的一个;步骤S102:所述第一终端模块根据所述设备序列号确定第二终端模块已启动时,建立端口转发链路,所述第二终端模块设置在所述目标移动作业客户端中;在PC端预先配置一个端口,在此称为第一端口,在移动作业客户端也预先配置一个端口,在此称为第二端口,在确定第二终端模块已启动时,建立端口转发链路,则将所有向PC端的第一端口发送的请求(或者命令),都可以转发到移动作业客户端上的第二端口,其中,确定第二终端模块已启动可以采用现有任意可实现的方式,例如,对于采用android系统的移动作业客户端,可以用google开发的用于管理设备的adb.exe程序来实现,也不限于采用其他方式,在此不予赘述;步骤S103:所述第一终端模块基于所述端口转发链路建立所述第一终端模块和所述第二终端模块之间的长连接;第一终端模块和所述第二终端模块之间建立的长连接使移动作业客户端和PC端之间建立了逻辑连接,由于端口转发链路可以实现将PC端的第一端口发送的请求(或者命令)转发到移动作业客户端上的第二端口,因此,第一终端模块可以基于该端口转发链路发送连接请求,所述第二终端模块接收到该连接请求后,建立二者之间的长连接;步骤S104:所述第一终端模块和所述第二终端模块通过所述长连接进行所述目标移动作业客户端到PC端连接的服务端的同步请求以及所述服务端到所述目标移动作业客户端的同步数据的转发;其中,所述目标移动作业客户端到PC端连接的服务端的同步请求的转发过程,以及所述服务端到所述目标移动作业客户端的同步数据的转发过程,就是实现目标移动作业客户端的数据同步过程,在此过程中,要求PC端是联网的,即PC端是与服务端连接的,一般为了保证数据同步安全,PC端是与服务端通过局域网连接的,目标移动作业客户端借助已联网的PC端,共享PC端的网络实现数据同步。其中,第一终端模块、第一终端模块是预先设置可实现上述功能的应用软件。据此,依据本实施的方案,其是PC端中设置的第一终端模块从与PC端建立USB的移动作业客户端中确定目标移动作业客户端,通过该目标移动作业客户端对应的USB连接获取该目标移动作业客户端的设备序列号,在基于所述设备序列号确定第二终端模块已启动时,建立端口转发链路,并基于所述端口转发链路建立所述第一终端模块和所述第二终端模块之间的长连接,则所述第一终端模块和所述第二终端模块通过所述长连接进行所述目标移动作业客户端到PC端连接的服务端的同步请求以及所述服务端到所述目标移动作业客户端的同步数据的转发,即实现目标移动作业客户端的数据同步,且本发明的目标移动作业客户端的数据同步的实现方式不依赖于移动作业客户端的root权限,也不依赖于PC端有网络共享权限时,而且整个通讯过程可以只在PC端和服务端所在的内网中进行,保证了数据同步的安全性,同时,由于本方案不依赖于GPRS通讯或者WiFi通讯,因而不会受移动蜂窝信号衰弱等环境因素的影响,保证了数据同步的稳定性。如上所述,需要在第一终端模块和所述第二终端模块之间建立长连接后,进行数据同步,但考虑到目标移动作业客户端可能并未安装第二终端模块,对于这种情况,应该先安装第二终端模块,因此,在其中一个实施例中,上述第一终端模块根据所述设备序列号确定第二终端模块已启动可以包括步骤:所述第一终端模块检测到所述第二终端模块已经启动时,确定所述设备序列号确定第二终端模块已启动;所述第一终端模块检测到所述第二终端模块未启动时,驱动所述第二终端模块的安装进程,在所述第二终端模块的安装完毕后,启动所述第二终端模块。在本实施例中,是在检测到第二终端模块是未启动时,驱动所述第二终端模块的安装进程,并在所述第二终端模块的安装完毕后,启动所述第二终端模块,在检测二终端模块已经启动时,确定所述设备序列号确定第二终端模块已启动,在具体实现时,本过程可以基于已经建立的USB数据线实现。此外,上述第一终端模块确定目标移动作业客户端的方式可以包括下述方式中的任意一种:方式一,所述第一终端模块查询用户交互界面显示的移动作业客户端列表,当包括多个移动作业客户端的标识时,根据接收到的手动选择指令确定所述目标移动作业客户端;方式二,所述第一终端模块查询用户交互界面显示的移动作业客户端列表,当只包括一个移动作业客户端的标识时,根据接收到的自动选择指令确定所述目标移动作业客户端,所述目标移动作业客户端为当前移动作业客户端列表中的标识对应的移动作业客户端。其中,方式一是在有多个移动作业客户端与PC端建立USB连接时,可以根据用户的选择确定目标移动作业客户端;方式二是在仅有一个移动作业客户端与所述PC端建立USB连接时,可以自动确定目标移动作业客户端。根据本实施例中的方案,需要根据移动作业客户端列表确定所述目标移动作业客户端,因此,在其中一个实施例中,在第一终端模块从与PC端建立USB连接的移动作业客户端确定目标移动作业客户端前,还可以包括如下步骤:所述第一终端模块搜索与PC端建立USB连接的移动作业客户端,在搜索到移动作业客户端后,将所述目标移动作业客户端的标识添加到所述移动作业客户端列表中,其中,搜索过程可以在第一终端模块启动时完成。另一方面,在其中一个实施例中,上述步骤S104可以具体通过如下步骤实现:所述第二终端模块通过所述长连接向所述第一终端模块发送同步请求;所述第一终端模块将所述同步请求转发到服务端;所述第一终端模块接收所述服务端根据所述同步请求获得并返回的同步数据;所述第一终端模块经所述长连接向所述第一终端模块所述同步数据;所述第二终端模块接收所述同步数据。其中,第二终端模块接收到了同步请求后,可以先对该同步请求进行分析,例如分析该同步请求是否满足相应的通讯协议,或者分析该同步请求对应的服务器地址,以进行正确转发,服务端接收到同步请求后,对该服务请求进行处理获得同步数据,并将该同步数据发送到第二终端模块,该同步数据再经所述长连接将该同步数据发送给所述第一终端模块,整个数据同步过程,安全、可靠、稳定,实现了让移动作业客户端共享PC端的网络进行数据同步。根据上述本发明的数据同步实现方法,本发明还提供一种数据同步实现系统,以下就本发明的数据同步实现系统的实施例进行说明。图2中示出了本发明的数据同步实现系统的一个较佳示例的结构示意图。依据不同的考虑因素,在具体实现本发明的数据同步实现系统时,可以包含图2中所示的全部,也可以只包含图2中所示的其中一部分。为了便于说明,在图2中只示处了与本发明相关的部分。一种数据同步实现系统,包括设置在PC端的第一终端模块201和设置在移动作业客户端的第二终端模块202,第一终端模块201包括序列号获取单元2011、链路建立单元2012、连接建立单元2013、转发单元2014,其中:序列号获取单元2011用于从与PC端建立USB连接的移动作业客户端中确定目标移动作业客户端,通过所述目标移动作业客户端对应的USB连接获取所述目标移动作业客户端的设备序列号;链路建立单元2012用于根据所述设备序列号确定第二终端模块202已启动时,建立端口转发链路;连接建立单元2013用于基于所述端口转发链路建立所述第一终端模块和所述第二终端模块之间的长连接;转发单元2014用于将接收到的同步请求转发到所述PC端连接的服务端,还用于在接收所述服务端根据所述同步请求获得并返回的同步数据,经所述长连接向所述第二终端模块发送所述同步数据;第二终端模块202用于通过所述长连接向所述转发单元发送所述同步请求,还用于接收所述同步数据。在其中一个实施例中,链路建立单元2012可以在根据所述设备序列号检测到第二终端模块202已经启动时,确定第二终端模块202已启动,在根据所述设备序列号检测到第二终端模块202未启动时,驱动所第二终端模块202的安装进程,在第二终端模块202的安装完毕后,启动第二终端模块202。在其中一个实施例中,序列号获取单元201可以查询用户交互界面显示的移动作业客户端列表,当包括多个移动作业客户端的标识时,根据接收到的手动选择指令确定所述目标移动作业客户端;或者/和序列号获取单元2011可以查询用户交互界面显示的移动作业客户端列表,当只包括一个移动作业客户端的标识时,根据接收到的自动选择指令确定所述目标移动作业客户端,所述目标移动作业客户端为当前移动作业客户端列表中的标识对应的移动作业客户端。在其中一个实施例中,第一终端模块201还可以包括:搜索单元2015,用于搜索与所述PC端建立USB连接的移动作业客户端,在搜索到移动作业客户端后,将所述目标移动作业客户端的标识添加到所述移动作业客户端列表中。本发明系统中的各模块等的具体实现方式,可以与上述本发明方法中的相同,在此不予详加赘述。以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1