一种导航设备的要素级更新方法
【专利摘要】一种导航设备的要素级更新方法,假设要素A需要更新,对于要素A有两种更新模式,第一种模式BASE+DELTA,另一种模式是BASE,至于选择哪种模式,依赖于数据量的大小,数据的组织结构,与其他要素的关联性等多个要素共同来决定;第一种模式BASE+DELTA,要素被分成两个部分,每次更新的时候,会对DELTA进行更新,BASE不会更新;第二种模式是BASE,更新的时候,会对全部的数据进行更新,读取只是一个数据,如果存在可更新的数据,会下载更新数据到指定的目录下,并负责管理下载的数据。本发明的优点:变更频繁,少量核心要素更新的方法。可以根据实际情况,选择一种模式或者两种模式混合,实现更新过程。在无网络支持的情况下,选择本地更新,节省流量。
【专利说明】一种导航设备的要素级更新方法
【技术领域】
[0001] 本发明涉及车载导航设备增量更新【技术领域】,特别涉及了一种导航设备的要素级 更新方法。
【背景技术】
[0002] 用户在使用导航中,可能会因为周围新建的小区,新开业的大型商场检索不到,抱 怨数据太旧,可能因为城市新规划的道路,迟迟不能加入路线规划中,而无法满意。各家导 航软件的提供商也都意识到新数据对于终端用户的重要性。他们也在想办法,采取措施,增 加数据发布的版本,但是全要素的数据更新,很难做到少于一个月的更新频率,这是综合了 成本和技术现状给出的结论。
[0003] 在实际使用过程中,用户关心的内容是有限的。从道路交通运输和管理的视角观 察现实世界,将地理对象或活动定义成要素。对于兴趣点和道路等都是要素,因此对于用户 关心的要素进行更新,可以大大提高用户的满意度。而针对少量要素的更新,也会对导航软 件的供应商来说,减少到可以承受的工作量的投入。除此之外,少量的要素更新,可以把升 级数据制作的相对小一些,方便数据的下载和升级,减少数据更新过程中的复杂程度。
【发明内容】
[0004] 本发明的目的是为了解决了用户长期使用旧数据的问题,实现要素级更新以较短 的频次发布最新的升级数据,终端只要具有联网功能,就能以静默的方式来完成从旧数据 到新数据的升级,特提供了一种导航设备的要素级更新方法。
[0005] 本发明提供了一种导航设备的要素级更新方法,其特征在于:所述的导航设备的 要素级更新方法具体为:
[0006] 假设要素 A需要更新,对于要素 A有两种更新模式,第一种模式BASE+DELTA,另一 种模式是BASE,至于选择哪种模式,依赖于数据量的大小,数据的组织结构,与其他要素的 关联性等多个要素共同来决定;
[0007] 第一种模式BASE+DELTA,要素被分成两个部分,每次更新的时候,会对DELTA进行 更新,BASE不会更新;DELTA会维护BASE数据中,取消信息的描述;当这种模式的数据被使 用的时候,会同时读取BASE+DELTA数据;BASE数据中的内容在解析过程中,需要去除DELTA 数据中定义的使BASE无效的信息描述,加上DELTA中定义的增加信息,才是需要解析的结 果;
[0008] 第二种模式是BASE,更新的时候,会对全部的数据进行更新;这种模式对于读取 和处理是最简单的模式,不同于BASE+DELTA模式,读取只是一个数据;
[0009] 更新开始,首先会启动更新过程,判断是否是通过联网更新,还是本地更新,如果 是联网更新,在网络已经连接的情况下,更新过程会与更新服务器进行数据的交换,判断是 否存在可以更新的数据;
[0010] 如果存在可更新的数据,会下载更新数据到指定的目录下,并负责管理下载的数 据,管理下载的数据包括:下载数据的个数,下载数据的顺序,下载数据的进度,下载数据的 状态。
[0011] 下载结束后,更新过程会对数据的完整性和正确性校验,校验通过后,会触发升级 数据,如果数据升级成功,会通知外部应用已经有新数据,更新过程处于等待;
[0012] 外部应用在收到这个通知后,查询当前的切换时机是否符合切换到新数据的条 件,一旦具备切换条件,外部应用主动将数据从旧数据切换到新数据;
[0013] 更新过程,收到切换数据完成的通知,做切换后处理,要素级数据更新结束;
[0014] 由于在实际场景中,更新过程会有多个要素数据来更新,中间的更新过程会被执 行多遍;对于多个要素的数据更新,涉及更新过程对多个数据更新状态的管理,对这部分的 实现会复杂一些;
[0015] 对于用户体验,在实现更新过程中,会穿插页面和动作提示,指导用户来操作,完 成数据更新的过程;
[0016] 对于新要素数据,无论是BASE+DELTA的模式,还是BASE模式,更新后,外部应用业 务模块将针对不同模式使用新要素数据。
[0017] 导航设备,包括以下硬件模块:
[0018] 外部应用模块:
[0019] 外部应用的主线程,用于控制整个外部应用过程间的执行顺序。在要素级增量更 新执行过程中,当收到有新数据更新的通知后,外部应用模块等待适当的时机,完成旧数据 到新数据的切换。
[0020] 外部通信模块:
[0021] 会将要素级增量更新过程中的消息发给外部应用模块,外部应用模块会将用户操 作反馈到外部通信模块。
[0022] 数据管理模块:
[0023] 根据外部通信模块传递过来的消息,判断是否需要更新,需要的文件,文件的个 数,更新的策略,更新的状态,更新的进度,管理数据更新的履历等。这是整个要素级更新过 程的控制模块,也是最为复杂的一个模块。
[0024] 网络协议模块:
[0025] 负责生成与更新服务器之间的通信交换协议。可以对协议的实现细节有很好的封 装。
[0026] 网络通信模块:
[0027] 负责对网络服务器的通信,网络状态的判断,网络重试操作等。可以支持多个 并发的网络连接。为了减少流量的消耗,需要支持续传。支持对网络协议的封装,例 如:http, TCP,UDP,ICMP 等。
[0028] 下载数据模块:
[0029] 负责将数据下载本地,支持多个文件的下载,支持文件下载的断点续传,以及对于 写操作异常的处理。
[0030] 升级数据模块:
[0031] 负责将数据进行升级,按照具体的数据格式,升级方法,生成目标的数据。升级数 据的方法,自行设计开发。
[0032] 本发明的优点:
[0033] 本发明所述的导航设备的要素级更新方法,变更频繁,少量核心要素更新的方法, 实现更新过程。
【专利附图】
【附图说明】
[0034] 下面结合附图及实施方式对本发明作进一步详细的说明:
[0035] 图1为要素级更新过程流程图;
[0036] 图2为要素级增量更新硬件结构示意图。
【具体实施方式】
[0037] 实施例1
[0038] 本发明提供了一种导航设备的要素级更新方法,其特征在于:所述的导航设备的 要素级更新方法具体为:
[0039] 假设要素 A需要更新,对于要素 A有两种更新模式,第一种模式BASE+DELTA,另一 种模式是BASE,至于选择哪种模式,依赖于数据量的大小,数据的组织结构,与其他要素的 关联性等多个要素共同来决定;
[0040] 第一种模式BASE+DELTA,要素被分成两个部分,每次更新的时候,会对DELTA进行 更新,BASE不会更新;DELTA会维护BASE数据中,取消信息的描述;当这种模式的数据被使 用的时候,会同时读取BASE+DELTA数据;BASE数据中的内容在解析过程中,需要去除DELTA 数据中定义的使BASE无效的信息描述,加上DELTA中定义的增加信息,才是需要解析的结 果;
[0041] 第二种模式是BASE,更新的时候,会对全部的数据进行更新;这种模式对于读取 和处理是最简单的模式,不同于BASE+DELTA模式,读取只是一个数据;
[0042] 更新开始,首先会启动更新过程,判断是否是通过联网更新,还是本地更新,如果 是联网更新,在网络已经连接的情况下,更新过程会与更新服务器进行数据的交换,判断是 否存在可以更新的数据;
[0043] 如果存在可更新的数据,会下载更新数据到指定的目录下,并负责管理下载的数 据,管理下载的数据包括:下载数据的个数,下载数据的顺序,下载数据的进度,下载数据的 状态。
[0044] 下载结束后,更新过程会对数据的完整性和正确性校验,校验通过后,会触发升级 数据,如果数据升级成功,会通知外部应用已经有新数据,更新过程处于等待;
[0045] 外部应用在收到这个通知后,查询当前的切换时机是否符合切换到新数据的条 件,一旦具备切换条件,外部应用主动将数据从旧数据切换到新数据;
[0046] 更新过程,收到切换数据完成的通知,做切换后处理,要素级数据更新结束;
[0047] 由于在实际场景中,更新过程会有多个要素数据来更新,中间的更新过程会被执 行多遍;对于多个要素的数据更新,涉及更新过程对多个数据更新状态的管理,对这部分的 实现会复杂一些;
[0048] 对于用户体验,在实现更新过程中,会穿插页面和动作提示,指导用户来操作,完 成数据更新的过程;
[0049] 对于新要素数据,无论是BASE+DELTA的模式,还是BASE模式,更新后,外部应用业 务模块将针对不同模式使用新要素数据。
[0050] 导航设备,包括以下硬件模块:
[0051] 外部应用模块:
[0052] 外部应用的主线程,用于控制整个外部应用过程间的执行顺序。在要素级增量更 新执行过程中,当收到有新数据更新的通知后,外部应用模块等待适当的时机,完成旧数据 到新数据的切换。
[0053] 外部通信模块:
[0054] 会将要素级增量更新过程中的消息发给外部应用模块,外部应用模块会将用户操 作反馈到外部通信模块。
[0055] 数据管理模块:
[0056] 根据外部通信模块传递过来的消息,判断是否需要更新,需要的文件,文件的个 数,更新的策略,更新的状态,更新的进度,管理数据更新的履历等。这是整个要素级更新过 程的控制模块,也是最为复杂的一个模块。
[0057] 网络协议模块:
[0058] 负责生成与更新服务器之间的通信交换协议。可以对协议的实现细节有很好的封 装。
[0059] 网络通信模块:
[0060] 负责对网络服务器的通信,网络状态的判断,网络重试操作等。可以支持多个 并发的网络连接。为了减少流量的消耗,需要支持续传。支持对网络协议的封装,例 如:http, TCP,UDP,ICMP 等。
[0061] 下载数据模块:
[0062] 负责将数据下载本地,支持多个文件的下载,支持文件下载的断点续传,以及对于 写操作异常的处理。
[0063] 升级数据模块:
[0064] 负责将数据进行升级,按照具体的数据格式,升级方法,生成目标的数据。升级数 据的方法,自行设计开发。
【权利要求】
1. 一种导航设备的要素级更新方法,其特征在于:所述的导航设备的要素级更新方法 具体为: 假设要素 A需要更新,对于要素 A有两种更新模式,第一种模式BASE+DELTA,另一种模 式是BASE,至于选择哪种模式,依赖于数据量的大小,数据的组织结构,与其他要素的关联 性等多个要素共同来决定; 第一种模式BASE+DELTA,要素被分成两个部分,每次更新的时候,会对DELTA进行更 新,BASE不会更新;DELTA会维护BASE数据中,取消信息的描述;当这种模式的数据被使用 的时候,会同时读取BASE+DELTA数据;BASE数据中的内容在解析过程中,需要去除DELTA 数据中定义的使BASE无效的信息描述,加上DELTA中定义的增加信息,才是需要解析的结 果; 第二种模式是BASE,更新的时候,会对全部的数据进行更新;这种模式对于读取和处 理是最简单的模式,不同于BASE+DELTA模式,读取只是一个数据; 更新开始,首先会启动更新过程,判断是否是通过联网更新,还是本地更新,如果是联 网更新,在网络已经连接的情况下,更新过程会与更新服务器进行数据的交换,判断是否存 在可以更新的数据; 如果存在可更新的数据,会下载更新数据到指定的目录下,并负责管理下载的数据,管 理下载的数据包括:下载数据的个数,下载数据的顺序,下载数据的进度,下载数据的状态。
2. 按照权利要求1所述的导航设备的要素级更新方法,其特征在于:下载结束后,更新 过程会对数据的完整性和正确性校验,校验通过后,会触发升级数据,如果数据升级成功, 会通知外部应用已经有新数据,更新过程处于等待; 外部应用在收到这个通知后,查询当前的切换时机是否符合切换到新数据的条件,一 旦具备切换条件,外部应用主动将数据从旧数据切换到新数据; 更新过程,收到切换数据完成的通知,做切换后处理,要素级数据更新结束; 由于在实际场景中,更新过程会有多个要素数据来更新,中间的更新过程会被执行多 遍;对于多个要素的数据更新,涉及更新过程对多个数据更新状态的管理; 对于用户体验,在实现更新过程中,会穿插页面和动作提示,指导用户来操作,完成数 据更新的过程; 对于新要素数据,无论是BASE+DELTA的模式,还是BASE模式,更新后,外部应用业务模 块将针对不同模式使用新要素数据。
【文档编号】G06F9/445GK104123160SQ201410360180
【公开日】2014年10月29日 申请日期:2014年7月25日 优先权日:2014年7月25日
【发明者】解威, 李潍希, 郭瑞瑞, 朱小莹 申请人:沈阳美行科技有限公司