一种AR应用程序在线云更新的方法和系统
技术领域
本发明涉及一种AR应用程序在线云更新的方法和系统。
背景技术
增强现实(Augmented Reality,简称AR)是近年来国外众多知名大学和研究机构的研究热点之一,也被称之为混合现实。它通过电脑技术,将虚拟的信息应用到真实世界,真实的环境和虚拟的物体实时地叠加到了同一个画面或空间同时存在,增强现实提供了在一般情况下,不同于人类可以感知的信息。它不仅展现了真实世界的信息,而且将虚拟的信息同时显示出来,两种信息相互补充、叠加。现有的AR应用程序,当云端的服务器资源有更新时,客户端要想实现相应的更新,通常的做法是下载新的安装包重新安装,下载新的安装包不但损耗大量的网络流量和占据较多的宽度资源,而且在网速不佳的情况下,为实现更新客户端的AR应用程序,下载新的安装包需要花费大量时间,效率低且不方便。
发明内容
本发明的目的是提供一种节省流量、高效方便的AR应用程序在线云更新的方法和系统。
本发明所述一种AR应用程序在线云更新的方法包括以下步骤:
步骤1,客户端获取服务器端AR应用程序的版本号,与客户端本地的AR应用程序版本号进行比较,若不一致,则客户端发送更新请求至服务器端;
步骤2,服务器端获取客户端发送的更新请求后,将服务器端的AR应用程序的识别数据和AR资源的映射匹配关系以数据表的形式发送至客户端;
步骤3,客户端从底层对AR应用程序进行解析,在缓存空间内搭建模拟的可编译环境;
步骤4,根据服务器发送过来的AR应用程序的识别数据和AR资源的映射匹配关系的数据表对AR应用程序进行重新编译、封装。
本发明还提供了一种AR应用程序在线云更新的系统,该系统包括客户端和服务器端;
所述客户端包括,
版本比较模块,用以获取服务器端AR应用程序的版本号,与客户端本地的AR应用程序版本号进行比较;
更新请求发送模块,用以发送更新请求至服务器端;
数据表接收模块,用以接收服务器发送过来的AR应用程序的识别数据和AR资源的映射匹配关系的数据表;
编译环境构建模块,用以在缓存空间内搭建模拟的可编译环境;
解析模块,用以从底层对AR应用程序进行解析;
编译封装模块,根据服务器发送过来的AR应用程序的识别数据和AR资源的映射匹配关系的数据表对AR应用程序进行重新编译、封装;
所述服务器端包括,
更新请求接收模块,用以接收客户端发送过来的更新请求;
数据表发送模块,用以发送AR应用程序的识别数据和AR资源的映射匹配关系的数据表至客户端;
储存模块,用以储存AR应用程序的识别数据和AR资源的映射匹配关系的数据表。
本发明所述的一种AR应用程序在线云更新的方法和系统,客户端首先获取服务器端AR应用程序的版本号,与客户端本地的AR应用程序版本号进行比较,若不一致,则客户端发送更新请求至服务器端;服务器端在接收到客户端发送的更新请求后,从储存模块中调取AR应用程序的识别数据和AR资源的映射匹配关系的数据表发送至客户端,客户端的AR应用程序通过在客户端模拟出可编译的环境,对AR应用程序进行解析,根据从服务器获取的映射关系数据表重新编译封装,实现了AR应用程序在线更新。本发明当服务器端上传有新的AR资源时或对以前的AR资源有改进时,服务器会相应的更新AR应用程序的识别数据和AR资源的映射匹配关系的数据表,客户端获取到该数据表,依赖自身的软硬件环境模拟出可编译的环境,对AR应用程序进行解析,重新编译封装即可实现更新。以往AR应用程序的AR资源和识别数据都储存在客户端,设计人员对AR资源进行更新时,客户端必须从云端下载含有新的AR资源的安装包,而本发明中AR应用程序的AR资源储存在云端,客户端想要进行更新时,只需下载AR应用程序的识别数据和AR资源的映射匹配关系的数据表即可。AR应用程序的识别数据和AR资源的映射匹配关系的数据表相比整个AR应用程序安装包具有数据量小的特点,可有效节省客户端与服务器端间通讯的网络流量,而且不需要下载更新的安装包进行重新安装,高效方便。
附图说明
图1为本发明一种AR应用程序在线云更新的方法流程示意图。
图2为本发明一种AR应用程序在线云更新的系统的结构示意图。
具体实施方式
如图1所示,一种AR应用程序在线云更新的方法包括以下步骤:步骤1,客户端根据服务器端的URL路径访问服务器端,在服务器端获取AR应用程序的版本号,与客户端本地的AR应用程序版本号进行比较,若不一致,则客户端发送更新请求至服务器端;步骤2,服务器端获取客户端发送的更新请求后,将服务器端的AR应用程序的识别数据和AR资源的映射匹配关系以数据表的形式发送至客户端;步骤3,客户端从底层对AR应用程序进行解析,在缓存空间内搭建模拟的可编译环境;步骤4,根据服务器发送过来的AR应用程序的识别数据和AR资源的映射匹配关系的数据表对AR应用程序进行重新编译、封装。
下面根据实施1和2对AR应用程序在线云更新的方法做说明:
实施例1,客户端的AR应用程序版本号为1.0,客户端启动后,通过3G、WIFI或NFC技术与服务器端连接实现数据的通讯,客户端根据服务器端的URL路径www.xxx.com访问服务器端,从在服务器端获取到AR应用程序的版本号为1.0,客户端通过比较,确定客户端的AR应用程序版本与服务器端的一致,则客户端正常运行。
实施例2,客户端的AR应用程序版本号为1.0,客户端启动后,通过3G、WIFI或NFC技术与服务器端连接实现数据的通讯,客户端根据服务器端的URL路径www.xxx.com访问服务器端,从在服务器端获取到AR应用程序的版本号为1.1,客户端通过比较,确定客户端的AR应用程序版本与服务器端的不一致,则发送updata的更新请求到服务器端,服务器端在接收到客户端发送过来的updata的更新请求后,将服务器端的AR应用程序的识别数据和AR资源的映射匹配关系以数据表的形式发送至客户端;客户端接收到数据表后,在缓存空间内搭建模拟的可编译环境,将AR应用程序从底层解析,读取数据表中识别数据和AR资源的映射匹配关系,根据识别数据和AR资源的映射匹配关系对AR应用程序的代码进行调整,然后重新编译、封装,实现AR应用程序的更新。
其中,客户端的AR应用程序在每次启动时都向服务器获取最新的AR应用程序的版本号。
优选地,在服务器在发送映射匹配关系的数据表给客户端前,服务器将发送映射匹配关系的数据表进行压缩处理,客户端在接收映射匹配关系的数据表时进行相应的解压处理。通过对AR应用程序的识别数据和AR资源的映射匹配关系进行压缩,可减少客户端与服务器端更新时传输的数据量,可更有效地节省网络流量,在网速比较低的情况下也能快速完成AR应用程序的更新。
另外,在检测到客户端本地的AR应用程序版本号与服务器端的AR应用程序的版本号不一致时,AR应用程序界面会出现版本升级提示框,提示用户是否进行升级,用户可选择是否在当前进行更新,若用户选择不更新,则运行客户端上旧版本的AR应用程序,而在下次用户启动AR应用程序再提醒用户是否进行更新。
为了提高安全性,客户端发送的更新请求中包括用户信息,在服务器端获取到客户端发送过来后的更新请求后,会对更新请求中用户信息的合法性进行验证,验证合法后才发送识别数据和AR资源的映射匹配关系的数据表给客户端。
如图2所述,本发明还提供了一种AR应用程序在线云更新的系统,该系统包括客户端和服务器端;
所述客户端包括,
版本比较模块,用以获取服务器端AR应用程序的版本号,与客户端本地的AR应用程序版本号进行比较;
更新请求发送模块,用以发送更新请求至服务器端;
数据表接收模块,用以接收服务器发送过来的AR应用程序的识别数据和AR资源的映射匹配关系的数据表;
编译环境构建模块,用以在缓存空间内搭建模拟的可编译环境;
解析模块,用以从底层对AR应用程序进行解析;
编译封装模块,根据服务器发送过来的AR应用程序的识别数据和AR资源的映射匹配关系的数据表对AR应用程序进行重新编译、封装;
所述服务器端包括,
更新请求接收模块,用以接收客户端发送过来的更新请求;
数据表发送模块,用以发送AR应用程序的识别数据和AR资源的映射匹配关系的数据表至客户端;
储存模块,用以储存AR应用程序的识别数据和AR资源的映射匹配关系的数据表。
其中,客户端可以通过3G、WIFI或NFC技术与服务器端连接,实现数据的通讯。
优选地,服务器端还包括压缩模块,用以将发送映射匹配关系的数据表进行压缩处理;客户端还包括解压模块,用以将接收到的映射匹配关系的数据表进行相应的解压处理。通过对对AR应用程序的识别数据和AR资源的映射匹配关系进行压缩,可减少客户端与服务器端更新时传输的数据量,可更有效地节省网络流量。
另外,服务器端还可包括验证模块,用以对客户端发送过来的更新请求的合法性进行验证,增强AR应用程序在线云更新的安全性。
本文所述的一种AR应用程序在线云更新的方法和系统,当服务器端上传有新的AR资源时或对以前的AR资源有改进时,服务器会相应的更新AR应用程序的识别数据和AR资源的映射匹配关系的数据表,客户端获取到该数据表,依赖自身的软硬件环境模拟出可编译的环境,对AR应用程序进行解析,重新编译封装,改变以往需要下载更新的安装包进行重新安装,节省流量,方便高效。