NativeAPP、WebAPP与类微信APP信息同步系统的制作方法
【专利摘要】本发明提出一种基于服务端的技术,对于不同的客户端进行数据交互,适应不同的客户端在网络传输上的要求;将NativeAPP,WebAPP和类微信APP不同客户端进行数据交互,并且将通信接口按照网络协议类型模块化,有选择性的同步部分数据到指定的客户端,为传统型行业信息发布和数据维护提供了一套便利的系统,数据同步大大减少人力操作成本;也为IT同行业打造了一个灵活、方便、快捷的不同客户端同步数据的工具,提高代码的可复用性,大大减少了人工开发成本。
【专利说明】Nat iveAPP、WebAPP与类微信APP信息同步系统
【技术领域】
[0001]本发明属于移动互联网【技术领域】,涉及一种让Native APP, Web APP和类微信APP进行数据同步系统。
【背景技术】
[0002]目前,随着互联网和电信技术的快速发展,移动通信与互联网融合成为了移动互联网。为满足行业企业推广自身的产品和业务流程的优化,基于移动互联网技术的行业应用应运而生,帮助行业企业达到移动办公、移动工作流程管理等目标,从而提升其工作效率和企业效益,提升管理水平。
[0003]移动互联网行业应用可分为三种,一种是基于本地操作系统运行的APP JPNativeAPP (原生APP);—种是基于智能终端的浏览器运行html5的Web APP ;一种是在微信的平台基础上,同时结合部分web html5技术,将原来的借助于浏览器的web APP多了个展现方式,即是类微信APP。然而这三种APP本身是相互独立,没有任何交集,没有实现自动化数据同步,没有办法实现“一站式更新,多端同步显示”。为了解决上述问题,需要将Native APP,Web APP,微信APP进行融合,提供一种跨终端信息同步的系统,将信息可以同步到不同的的终端,使使用者专注于信息的前期设计和后期数据统计分析,使开发者可以在此基础上进行二次开发,提高代码的可复用性,大大减少了人工成本,提高工作效率。
【发明内容】
[0004]本发明的目的是针对上述问题,提出一种基于服务端的技术,对于不同的客户端进行数据交互,适应不同的客户端在网络传输上的要求;将Native APP,Web APP和类微信APP不同客户端进行数据交互,并且将通信接口按照网络协议类型模块化,有选择性的同步部分数据到指定的客户端,为传统型行业信息发布和数据维护提供了一套便利的系统,数据同步大大减少人力操作成本;也为IT同行业打造了一个灵活、方便、快捷的不同客户端同步数据的工具,提高代码的可复用性,大大减少了人工开发成本。
[0005]本发明的技术方案如下:一种Native APP、Web APP与类微信APP信息同步系统,该系统包括以下几个部分:Native APP/ffeb APP /类微信APP,在移动端设备上使用的,提供信息显示或者功能操作的应用程序;微信服务端(微信服务商自身的系统服务器);系统服务端(本发明在自身硬件服务器上面搭建的终端应用程序)。本发明的核心部分,就是系统服务端,也是实现Native APP/ffeb APP /类微信APP信息同步的关键。
[0006]系统服务端,包括系统服务端与Native APP之间通信的模块、系统服务端与webhtml5之间通信的模块、系统服务端与微信服务端之间通信的模块、系统服务端的功能维护模块和通信数据管理模块。
所述系统服务端与Native APP之间通信的模块,指用户根据自身功能需求,选择特定的通信协议与服务端进行数据传输的接口模块。在该模块中,提供选择的通信协议有HTTP协议,HTTPS协议和XMPP协议。HTTPS协议一般都适用于保密性要求比较高的数据传输,比如令牌的校验,HTTP协议用于普通的数据传输,而XMPP协议一般为了达到实时通信的目的,以XML格式进行数据传输。
[0007]所述系统服务端与web html5之间通信的模块,指用户根据自身功能要求,选择是被动类型还是主动类型,从而跟服务端进行交互的接口模块。在该模块中,被动和主动两种类型是相对于服务端而言,被动类型是指由客户端主动发请求到服务端要数据,涉及下层协议有HTTP ;主动类型是指在无客户端请求的情况下服务端主动推送到客户端,涉及的写成协议有WS/WSS。
[0008]所述系统服务端与微信服务端之间通信的模块,指系统服务端调用微信服务端提供的接口,做了二次开发封装,对外进行发布,这里主要是涉及到下层的协议有HTTPS。这个模块也是系统服务端与类微信APP进行通信的桥梁,微信服务端本身已经具备与类微信APP (—个基于微信平台的APP)进行通信,只要保证本发明的系统服务端与微信服务端进行实时通信,也就能间接达到与类微信APP通信的目的。
[0009]所述系统服务端的功能维护模块,提供了人性化的操作界面,用于管理所有不同显示端显示的内容,特定功能的启动/关闭,数据保存到数据持久层,即是数据库,同时根据界面设定的参数,可以设定数据保存在服务端的有效期。
还有通信数据管理模块,通信管理,在数据交互太过频繁(数据连接超过后台配置参数设定的最大连接数)时,根据通信优先级策略,将优先级比较高的通信请求先处理,优先级较低的处于等待状态,达到降低服务端的交互压力;数据管理,对数据库中的数据进行监控,当数据库的数据寄存超过有效期就进行定时删除。
[0010]本发明的系统操作流程:首先使用者必须先将某个应用信息进行注册,再选择客户端类型(原生android APP /原生IOS APP /WEB APP /类微信APP)在服务端进行登录,比如android程序必须提供包名,在登记成功之后就会返回令牌,以此作为发送和获取信息的身份凭证。比如在登记选择了多个客户端类型的话,该应用下面的不同客户端也都绑定到了同个令牌。
[0011]一般有如下两种情况进行保存数据到系统服务端:一种是Native APP或Web APP等客户端应用,既没有服务端技术进行支持,又需要有录入数据端口的话,可以直接用本发明中的服务端功能维护模块提供的后台界面,进行相应的操作。在成功登录服务端之后,选择通信的协议,将需要进行发送数据通过后台界面中录入,将数据保存在本发明的底层数据库中。
[0012]一种是如果Native APP或Web APP等客户端应用,有自己的服务端来做支持,可以直接引用本发明中对外发布的通信服务接口 API,同时在调用API传入令牌做参数(注册登记时生成的令牌),默认是发送具有该身份标识的所有客户端,也可以在参数指定某几种客户端,临时将数据保存在本发明的底层数据库中。
[0013]需要进行同步的客户端应用,只需根据自身的客户端类型选择不同的API进行调用,加上应用的身份标识令牌,将数据临时保存在系统服务端的数据提取出来:通过XMPP协议或WS协议达到主动推送信息,或者通过HTTP协议代码的调用达到被动请求数据,都能同步刚才录入的数据到自身应用的客户端。
[0014]本发明的有益效果:现在如果Native APP (android/ios),与web APP和类微信APP要实现数据同步,要么通过人为录入数据信息的话,这样不仅增加工作量,同时还增加操作繁琐性;要么就通过编程的方式,针对特定的Native APP与进行同步一端来编写,这种方式虽然解决同步的问题,不仅可重用性极差,人工成本也增大。为了解决这些问题,本发明在第二种解决方式的基础上做了优化,同时针对不同的功能需求应用不同网络通信协议,再将操作实现封装起来,通用而不失灵活性,同时用服务端数据库作为终端存储的媒介,在数据的有效期内数据不会丢失,保证数据稳定性。
[0015]Native APP,Web APP和类微信APP之间数据同步的系统,对外提供两种实现模式:一种是Native APP或Web APP等客户端应用,无服务端技术进行支持的话,可以直接用本发明中的服务端功能维护模块提供的后台界面进行相应的操作,提供数据暂时寄放,实现其他客户端数据同步;一种是如果客户端根据自身的功能需求,可以直接引用本发明中对外发布的通信服务接口 API,做二次开发,实现指定的其他客户端进行通信。
【专利附图】
【附图说明】
[0016]下面结合附图对本发明做进一步详述。
[0017]图1为本发明的部署位置示意图。
[0018]图2为本发明的功能模块图。
[0019]图3为本发明的系统流程图。
【具体实施方式】
[0020]下面结合附图和实施例对本发明作进一步的说明。
[0021]如图1所示,为本发明的应用在系统中的部署位置示意图,本发明的功能模块如图2所示,它包括服务端与Native APP之间通信的模块、服务端与web html5之间通信的模块、服务端与微信服务端之间通信的模块、服务器的功能维护模块和队列通信管理模块。其处于底层,用数据库作为最终储存媒介,同时在结合队列通信管理模块可以对超时保存的数据进行定时删除。
[0022]如图3所示,为本发明的系统流程图,其中涉及的协议模块有如下几种=HTTPS协议模块:主要是提供给令牌验证,或者传输需要加密的数据的使用;HTTP协议模块:主要是应用在对数据保密要求不高的数据传输上;XMPP协议模块:主要是用在服务端与NativeAPP之间通信的模块,以XML格式进行数据传输,以达到实时通信的目的;WS或WSS协议接口:主要是用在服务端与web html5之间通信的模块,服务器和客户端可以在给定的时间范围内的任意时刻,相互推送信息,以达到实时通信的目的。
[0023]开发团队,在引入了本发明提供的对外同步的API包之后,只需要像普通方法那样调用,根据API开发文档,传入指定参数,并能将自身某款应用的不同的客户端数据同步起来,提供代码的可复用性,也节省了人员开发成本,最终让使用者可以把精力放在逻辑或者业务代码的处理上面。
【权利要求】
1.一种 Native APP、Web APP 与类微信 APP 信息同步系统,包括:Native APP/ffeb APP/类微信APP,在移动端设备上使用的,提供信息显示或者功能操作的应用程序;微信服务端;系统服务端,即本发明在自身硬件服务器上面搭建的终端应用程序,实现Native APP/Web APP /类微信APP信息同步的关键;所述系统服务端,包括系统服务端与Native APP之间通信的模块、系统服务端与web html5之间通信的模块、系统服务端与微信服务端之间通信的模块、系统服务端的功能维护模块和通信数据管理模块。
2.如权利要求1所述的NativeAPP,Web APP与类微信APP信息同步系统,其特征是:所述系统服务端与Native APP之间通信的模块,指用户根据自身功能需求,选择特定的通信协议与服务端进行数据传输的接口模块,在该模块中,提供选择的通信协议有HTTP协议,HTTPS协议和XMPP协议,HTTPS协议一般都适用于保密性要求比较高的数据传输,比如令牌的校验,HTTP协议用于普通的数据传输,而XMPP协议一般为了达到实时通信的目的,以XML格式进行数据传输。
3.如权利要求1所述的NativeAPP,Web APP与类微信APP信息同步系统,其特征是:所述系统服务端与web html5之间通信的模块,指用户根据自身功能要求,选择是被动类型还是主动类型,从而跟服务端进行交互的接口模块,在该模块中,被动和主动两种类型是相对于服务端而言,被动类型是指由客户端主动发请求到服务端要数据,涉及下层协议有HTTP ;主动类型是指在无客户端请求的情况下服务端主动推送到客户端,涉及的写成协议有 WS/WSS。
4.如权利要求1所述的NativeAPP,Web APP与类微信APP信息同步系统,其特征是:所述系统服务端与微 信服务端之间通信的模块,指系统服务端调用微信服务端提供的接口,做了二次开发封装,对外进行发布,这里主要是涉及到下层的协议有HTTPS,这个模块也是系统服务端与类微信APP进行通信的桥梁,微信服务端本身已经具备与类微信APP进行通信,只要保证本发明的系统服务端与微信服务端进行实时通信,也就能间接达到与类微信APP通信的目的。
5.如权利要求1所述的NativeAPP,Web APP与类微信APP信息同步系统,其特征是:所述系统服务端的功能维护模块,提供了人性化的操作界面,用于管理所有不同显示端显示的内容,特定功能的启动/关闭,数据保存到数据持久层,即是数据库,同时根据界面设定的参数,可以设定数据保存在服务端的有效期;还有通信数据管理模块,通信管理,在数据交互太过频繁时,根据通信优先级策略,将优先级比较高的通信请求先处理,优先级较低的处于等待状态,达到降低服务端的交互压力;数据管理,对数据库中的数据进行监控,当数据库的数据寄存超过有效期就进行定时删除。
6.如权利要求1所述的NativeAPP,Web APP与类微信APP信息同步系统的操作方法,方法如下:首先使用者必须先将某个应用信息进行注册,再选择客户端类型,在服务端进行登录,比如android程序必须提供包名,在登记成功之后就会返回令牌,以此作为发送和获取信息的身份凭证;比如在登记选择了多个客户端类型的话,该应用下面的不同客户端也都绑定到了同个令牌;一般有如下两种情况进行保存数据到系统服务端:一种是NativeAPP或Web APP等客户端应用,既没有服务端技术进行支持,又需要有录入数据端口的话,可以直接用本发明中的服务端功能维护模块提供的后台界面,进行相应的操作,在成功登录服务端之后,选择通信的协议,将需要进行发送数据通过后台界面中录入,将数据保存在本发明的底层数据库中;一种是如果Native APP或Web APP等客户端应用,有自己的服务端来做支持,可以直接引用本发明中对外发布的通信服务接口 API,同时在调用API传入令牌做参数,默认是发送具有该身份标识的所有客户端,也可以在参数指定某几种客户端,临时将数据保存在本发明的底层数据库中;需要进行同步的客户端应用,只需根据自身的客户端类型选择不同的API进行调用,加上应用的身份标识令牌,将数据临时保存在系统服务端的数据提取出来:通过XMPP协议或WS协议达到主动推送信息,或者通过HTTP协议代码的调用达到被动请 求数据,都能同步刚才录入的数据到自身应用的客户端。
【文档编号】H04L12/58GK103780627SQ201410044243
【公开日】2014年5月7日 申请日期:2014年1月30日 优先权日:2014年1月30日
【发明者】吴锦洲 申请人:吴锦洲