CN112068857A - 一种基于双系统的ota升级方法及系统 - Google Patents
一种基于双系统的ota升级方法及系统 Download PDFInfo
- Publication number
- CN112068857A CN112068857A CN202010240101.1A CN202010240101A CN112068857A CN 112068857 A CN112068857 A CN 112068857A CN 202010240101 A CN202010240101 A CN 202010240101A CN 112068857 A CN112068857 A CN 112068857A
- Authority
- CN
- China
- Prior art keywords
- controller
- upgrading
- dual
- ota
- data
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 95
- 230000009977 dual effect Effects 0.000 title claims abstract description 63
- 230000001360 synchronised effect Effects 0.000 abstract description 11
- 238000004458 analytical method Methods 0.000 abstract description 6
- 230000006870 function Effects 0.000 description 55
- 238000004891 communication Methods 0.000 description 53
- 230000008569 process Effects 0.000 description 29
- 238000010586 diagram Methods 0.000 description 28
- 238000012545 processing Methods 0.000 description 14
- 238000012795 verification Methods 0.000 description 14
- 230000003993 interaction Effects 0.000 description 10
- 238000006243 chemical reaction Methods 0.000 description 9
- 238000001514 detection method Methods 0.000 description 9
- 230000002159 abnormal effect Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000011084 recovery Methods 0.000 description 6
- 230000005236 sound signal Effects 0.000 description 6
- 230000033001 locomotion Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000002452 interceptive effect Effects 0.000 description 4
- 238000002360 preparation method Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 230000003321 amplification Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000002156 mixing Methods 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/22—Processing or transfer of terminal data, e.g. status or physical capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/22—Processing or transfer of terminal data, e.g. status or physical capabilities
- H04W8/24—Transfer of terminal data
- H04W8/245—Transfer of terminal data from a network towards a terminal
Abstract
本申请公开了一种基于双系统的OTA升级方法及系统,包括:第二控制器接收OTA服务器发送的双系统OTA升级策略,并经过解析得到双系统OTA升级数据,在对双系统OTA升级数据完成完整性的校验之后,分别在第一控制器和第二控制器中写入升级标志,以保证第一控制器和第二控制器同步进入升级模式。重启第一控制器和第二控制器,使第一控制器根据第一升级数据进行升级,第二控制器根据第二升级数据进行升级。可见,本实施例提供的方法及系统,可实现双系统的同步、稳定的升级,同时保证升级之后两个系统的版本的兼容性,使显示设备能够正常使用,并保证双系统设备也能通过OTA的方式向用户推送新版本的能力。
Description
本申请要求于2019年6月10日提交国家知识产权局申请号为201910498718.0的中国专利申请的优先权。其全部内容通过结合引用结合在本申请中。
技术领域
本申请涉及通信技术领域,尤其涉及一种基于双系统的OTA升级方法及系统。
背景技术
随着通信技术的不断发展,电脑、智能手机、社交电视等终端设备已经越来越普及。终端设备内置的系统通常为开源系统,由于使用需求的不断变化,同一终端设备内置的系统往往需要不断升级。
系统升级有很多种形式,通常采用空中下载技术(Over-the-Air Technology,OTA)升级。对于终端设备而言,一般都安装有Android系统、IOS系统或者其他操作系统。其中,Android系统具有recovery(恢复)升级功能,Android系统OTA升级可以在recovery模式下进行系统数据的升级,而Recovery分区自身数据的升级是在开机过程中基于install-recovery.sh来实现。这时候,如果在Recovery模式下,当OTA升级过程中出现掉电或程序异常而导致重启系统来重新执行OTA升级时,此时可能会出现部分已升级的分区与旧版本recovery分区不相兼容,从而造成终端设备在重启中出现卡死或者无法开机等异常现象。且在传统的OTA升级方案中,只能分别控制各个系统的升级,效率较低。
而随着用户对应用体验需求越来越高,使得对操作系统的各项性能指标的要求也随之变高,在终端设备上设置双系统或多系统也成为可能。在双系统架构下采用OTA方式进行升级时,分别为每个系统部署OTA升级策略。但如果对双系统分开部署OTA升级策略,很容易造成一个系统检测到OTA升级策略进行升级,而另一个系统未检测到的情况。如果系统的原版本与新版本之间的差异很小,终端设备不会有什么异常,但是如果差别很大,就会造成终端设备开不开机、开机后无法正常使用等问题。
发明内容
本申请提供了一种基于双系统的OTA升级方法及系统,以解决现有的OTA升级方法极易出现一个系统升级成功而其他系统升级失败的情况,导致显示设备无法正常运行的问题。
第一方面,本申请提供了一种基于双系统的OTA升级方法,用于具有第一控制器和第二控制器的显示设备,所述第二控制器用于与OTA服务器进行通信,所述方法应用于第二控制器,所述方法包括以下步骤:
获取OTA服务器发送的双系统OTA升级策略;
解析所述双系统OTA升级策略,得到双系统OTA升级数据;所述双系统OTA升级数据包括用于升级第一控制器的第一升级数据和用于升级第二控制器的第二升级数据;
校验所述双系统OTA升级数据的完整性,以在所述双系统OTA升级数据的完整性校验成功的情况下,将所述双系统OTA升级数据中的第一升级数据发送至第一控制器,以及,将所述双系统OTA升级数据中的第二升级数据发送至第二控制器;
生成升级标志写入指令,发送至所述第一控制器和第二控制器,所述升级标志写入指令用于使所述第一控制器和第二控制器中分别写入升级标志;
根据所述第一控制器的升级标志和第二控制器的升级标志,控制第一控制器和第二控制器重启,使所述第一控制器根据第一升级数据进行升级,第二控制器根据第二升级数据进行升级。
可选地,所述获取OTA服务器发送的双系统OTA升级策略,包括:
获取存储有第二本地版本的第二控制器信息;
发送信息获取指令至第一控制器;
接收所述第一控制器根据所述信息获取指令返回的存储有第一本地版本的第一控制器信息;
根据所述存储有第二本地版本的第二控制器信息和存储有第一本地版本的第一控制器信息生成双系统OTA升级请求信息;
根据所述双系统OTA升级请求信息,向OTA服务器发送请求双系统OTA升级策略指令;
接收所述OTA服务器返回的双系统OTA升级策略。
可选地,所述接收OTA服务器返回的双系统OTA升级策略,包括:
由所述OTA服务器检测第一控制器的多个升级策略,以及,第二控制器的多个升级策略;
判断所述第一控制器的多个升级策略与所述第二控制器的多个升级策略是否具有兼容性;
如果存在所述第一控制器的升级策略与第二控制器的升级策略具有兼容性,则根据具有兼容性的第一控制器的升级策略和第二控制器的升级策略,生成双系统OTA升级策略;
将所述双系统OTA升级策略发送至第二控制器。
可选地,所述解析双系统OTA升级策略,得到双系统OTA升级数据,包括:
解析所述双系统OTA升级策略,确定升级数据下载地址;
根据所述升级数据下载地址,下载双系统OTA升级数据。
可选地,所述校验双系统OTA升级数据的完整性,以在所述双系统OTA升级数据的完整性校验成功的情况下,将所述双系统OTA升级数据中的第一升级数据发送至第一控制器,以及,将所述双系统OTA升级数据中的第二升级数据发送至第二控制器,包括:
根据所述第二控制器解析的双系统OTA升级数据和OTA服务器返回的双系统OTA升级策略,判断所述双系统OTA升级数据和双系统OTA升级策略是否一致;
如果所述双系统OTA升级数据和双系统OTA升级策略一致,确定双系统OTA升级数据完整;
在所述双系统OTA升级数据的完整性校验成功的情况下,将所述双系统OTA升级数据解压为第一升级数据和第二升级数据;
将所述第一升级数据发送至第一控制器,以及,将所述第二升级数据发送至第二控制器。
可选地,还包括:
由所述第二控制器对第二升级数据的有效性进行校验;
在所述第二升级数据的有效性校验成功的情况下,由所述第一控制器对第一升级数据的有效性进行校验;
在所述第一升级数据的有效性校验成功的情况下,确定第一升级数据为第一控制器的升级策略,第二升级数据为第二控制器的升级策略。
可选地,所述由第二控制器对第二升级数据的有效性进行校验,包括:
发送签名标识获取指令至OTA服务器;
接收所述OTA服务器根据签名标识获取指令返回的第二控制器的升级策略的签名标识;
获取所述第二升级数据的签名标识;
判断所述第二升级数据的签名标识与所述第二控制器的升级策略的签名标识是否一致;
如果所述第二升级数据的签名标识与所述第二控制器的升级策略的签名标识一致,确定第二升级数据有效。
可选地,所述生成升级标志写入指令,发送至所述第一控制器和第二控制器,所述升级标志写入指令用于使第一控制器和第二控制器中分别写入升级标志,包括:
生成升级标志写入指令,由所述第二控制器根据所述升级标志写入指令写入升级标志;
判断所述第二控制器中的升级标志是否写入成功;
在所述第二控制器写入升级标志成功的情况下,将所述升级标志写入指令发送至第一控制器,以由所述第一控制器根据升级标志写入指令在第一控制器中写入升级标志。
可选地,还包括:
检测所述第一控制器的升级状态和第二控制器的升级状态;
在所述第二控制器的升级状态为成功状态时,接收所述第一控制器返回的升级结果,以同步第一控制器和第二控制器的升级结果。
第二方面,本申请还提供了一种基于双系统的OTA升级系统,包括:具有第一控制器和第二控制器的显示设备,以及,OTA服务器,所述第二控制器通过互联网与所述OTA服务器通信,所述第二控制器通过串口或网线与第一控制器连接;所述OTA服务器用于根据第二控制器发送的请求双系统OTA升级策略指令,发送双系统OTA升级策略至第二控制器;所述第一控制器用于根据第二控制器的指令执行相应操作;
所述第二控制器用于获取OTA服务器发送的双系统OTA升级策略;
解析所述双系统OTA升级策略,得到双系统OTA升级数据;所述双系统OTA升级数据包括用于升级第一控制器的第一升级数据和用于升级第二控制器的第二升级数据;
校验所述双系统OTA升级数据的完整性,以在所述双系统OTA升级数据的完整性校验成功的情况下,将所述双系统OTA升级数据中的第一升级数据发送至第一控制器,以及,将所述双系统OTA升级数据中的第二升级数据发送至第二控制器;
生成升级标志写入指令,发送至所述第一控制器和第二控制器,所述升级标志写入指令用于使所述第一控制器和第二控制器中分别写入升级标志;
根据所述第一控制器的升级标志和第二控制器的升级标志,控制第一控制器和第二控制器重启,使所述第一控制器根据第一升级数据进行升级,第二控制器根据第二升级数据进行升级。
可选地,所述第二控制器还用于:
获取存储有第二本地版本的第二控制器信息;
发送信息获取指令至第一控制器;
接收所述第一控制器根据所述信息获取指令返回的存储有第一本地版本的第一控制器信息;
根据所述存储有第二本地版本的第二控制器信息和存储有第一本地版本的第一控制器信息生成双系统OTA升级请求信息;
根据所述双系统OTA升级请求信息,向OTA服务器发送请求双系统OTA升级策略指令;
接收所述OTA服务器返回的双系统OTA升级策略。
可选地,所述OTA服务器还用于:
由所述OTA服务器检测第一控制器的多个升级策略,以及,第二控制器的多个升级策略;
判断所述第一控制器的多个升级策略与所述第二控制器的多个升级策略是否具有兼容性;
如果存在所述第一控制器的升级策略与第二控制器的升级策略具有兼容性,则根据具有兼容性的第一控制器的升级策略和第二控制器的升级策略,生成双系统OTA升级策略;
将所述双系统OTA升级策略发送至第二控制器。
可选地,所述第二控制器还用于:
解析所述双系统OTA升级策略,确定升级数据下载地址;
根据所述升级数据下载地址,下载双系统OTA升级数据。
可选地,所述第二控制器还用于:
根据所述第二控制器解析的双系统OTA升级数据和OTA服务器返回的双系统OTA升级策略,判断所述双系统OTA升级数据和双系统OTA升级策略是否一致;
如果所述双系统OTA升级数据和双系统OTA升级策略一致,确定双系统OTA升级数据完整;
在所述双系统OTA升级数据的完整性校验成功的情况下,将所述双系统OTA升级数据解压为第一升级数据和第二升级数据;
将所述第一升级数据发送至第一控制器,以及,将所述第二升级数据发送至第二控制器。
可选地,所述第二控制器还用于:
由所述第二控制器对第二升级数据的有效性进行校验;
在所述第二升级数据的有效性校验成功的情况下,由所述第一控制器对第一升级数据的有效性进行校验;
在所述第一升级数据的有效性校验成功的情况下,确定第一升级数据为第一控制器的升级策略,第二升级数据为第二控制器的升级策略。
可选地,所述第二控制器还用于:
发送签名标识获取指令至OTA服务器;
接收所述OTA服务器根据签名标识获取指令返回的第二控制器的升级策略的签名标识;
获取所述第二升级数据的签名标识;
判断所述第二升级数据的签名标识与所述第二控制器的升级策略的签名标识是否一致;
如果所述第二升级数据的签名标识与所述第二控制器的升级策略的签名标识一致,确定第二升级数据有效。
可选地,所述第二控制器还用于:
生成升级标志写入指令,由所述第二控制器根据所述升级标志写入指令写入升级标志;
判断所述第二控制器中的升级标志是否写入成功;
在所述第二控制器写入升级标志成功的情况下,将所述升级标志写入指令发送至第一控制器,以由所述第一控制器根据升级标志写入指令在第一控制器中写入升级标志。
可选地,所述第二控制器还用于:
检测所述第一控制器的升级状态和第二控制器的升级状态;
在所述第二控制器的升级状态为成功状态时,接收所述第一控制器返回的升级结果,以同步第一控制器和第二控制器的升级结果。
由以上技术方案可知,本发明实施例提供的一种基于双系统的OTA升级方法及系统,包括:第二控制器接收OTA服务器发送的双系统OTA升级策略,并经过解析得到双系统OTA升级数据,在对双系统OTA升级数据完成完整性的校验之后,将第一升级数据发送至第一控制器,将第二升级数据发送至第二控制器,第一升级数据和第二升级数据具有兼容性。再分别在第一控制器和第二控制器中写入升级标志,以保证第一控制器和第二控制器同步进入升级模式。重启第一控制器和第二控制器,使第一控制器根据第一升级数据进行升级,第二控制器根据第二升级数据进行升级。可见,本实施例提供的方法,可实现双系统的同步、稳定的升级,同时保证升级之后两个系统的版本的兼容性,使显示设备能够正常使用,并保证双系统设备也能通过OTA的方式向用户推送新版本的能力。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1中示例性示出了根据实施例中显示设备与控制装置之间操作场景的示意图;
图2中示例性示出了根据实施例中控制装置的硬件配置框图;
图3中示例性示出了根据实施例中显示设备中硬件系统的硬件配置框图;
图4中示例性示出了根据图3显示设备的硬件架构框图;
图5中示例性示出了根据实施例中显示设备的功能配置示意图;
图6a中示例性示出了根据实施例中显示设备中软件系统的配置示意图;
图6b中示例性示出了根据实施例中显示设备中应用程序的配置示意图;
图7中示例性示出了根据实施例中显示设备中用户界面的示意图;
图8中示例性示出了根据实施例中基于双系统的OTA升级系统的结构示意图;
图9中示例性示出了根据实施例中双系统架构图;
图10中示例性示出了根据实施例中基于双系统的OTA升级方法的数据流图;
图11中示例性示出了根据实施例中基于双系统的OTA升级方法的流程图;
图12中示例性示出了根据实施例中获取OTA服务器发送的双系统OTA升级策略的方法流程图;
图13中示例性示出了根据实施例中OTA服务器筛选升级策略的方法流程图;
图14中示例性示出了根据实施例中解析双系统OTA升级策略的方法流程图;
图15中示例性示出了根据实施例中校验双系统OTA升级数据的完整性的方法流程图;
图16中示例性示出了根据另一实施例中基于双系统的OTA升级方法的流程图;
图17中示例性示出了根据实施例中双系统进行有效性校验的方法流程图;
图18中示例性示出了根据实施例中双系统进行完整性和有效性校验的数据流图;
图19中示例性示出了根据另一实施例中双系统进行完整性和有效性校验的数据流图;
图20中示例性示出了根据实施例中双系统进行写入升级标志的方法流程图;
图21中示例性示出了根据另一实施例中双系统进行写入升级标志的数据流图;
图22中示例性示出了根据又一实施例中基于双系统的OTA升级方法的流程图;
图23中示例性示出了根据实施例中基于双系统的OTA升级方法的总数据流图。
具体实施方式
为使本申请示例性实施例的目的、技术方案和优点更加清楚,下面将结合本申请示例性实施例中的附图,对本申请示例性实施例中的技术方案进行清楚、完整地描述,显然,所描述的示例性实施例仅是本申请一部分实施例,而不是全部的实施例。
为便于用户使用,显示设备上通常会设置各种外部装置接口,以便于连接不同的外设设备或线缆以实现相应的功能。而在显示设备的接口上连接有高清晰度的摄像头时,如果显示设备的硬件系统没有接收源码的高像素摄像头的硬件接口,那么就会导致无法将摄像头接收到的数据呈现到显示设备的显示屏上。
并且,受制于硬件结构,传统显示设备的硬件系统仅支持一路硬解码资源,且通常最大仅能支持4K分辨率的视频解码,因此当要实现边观看网络电视边进行视频聊天时,为了不降低网络视频画面清晰度,就需要使用硬解码资源(通常是硬件系统中的GPU)对网络视频进行解码,而在此情况下,只能采取由硬件系统中的通用处理器(例如CPU)对视频进行软解码的方式处理视频聊天画面。
采用软解码处理视频聊天画面,会大大增加CPU的数据处理负担,当CPU的数据处理负担过重时,可能会出现画面卡顿或者不流畅的问题。进一步的,受制于CPU的数据处理能力,当采用CPU软解码处理视频聊天画面时,通常无法实现多路视频通话,当用户想要再同一聊天场景同时与多个其他用户进行视频聊天时,会出现接入受阻的情况。
基于上述各方面的考虑,为克服上述缺陷,本申请公开了一种双硬件系统架构,以实现多路视频聊天数据(至少一路本地视频)。
下面首先结合附图对本申请所涉及的概念进行说明。在此需要指出的是,以下对各个概念的说明,仅为了使本申请的内容更加容易理解,并不表示对本申请保护范围的限定。
本申请各实施例中使用的术语“模块”,可以是指任何已知或后来开发的硬件、软件、固件、人工智能、模糊逻辑或硬件或/和软件代码的组合,能够执行与该元件相关的功能。
本申请各实施例中使用的术语“遥控器”,是指电子设备(如本申请中公开的显示设备)的一个组件,该组件通常可在较短的距离范围内无线控制电子设备。该组件一般可以使用红外线和/或射频(RF)信号和/或蓝牙与电子设备连接,也可以包括WiFi、无线USB、蓝牙、动作传感器等功能模块。例如:手持式触摸遥控器,是以触摸屏中用户界面取代一般遥控装置中的大部分物理内置硬键。
本申请各实施例中使用的术语“手势”,是指用户通过一种手型的变化或手部运动等动作,用于表达预期想法、动作、目的/或结果的用户行为。
本申请各实施例中使用的术语“硬件系统”,可以是指由集成电路(IntegratedCircuit,IC)、印刷电路板(Printed circuit board,PCB)等机械、光、电、磁器件构成的具有计算、控制、存储、输入和输出功能的实体部件。在本申请各个实施例中,硬件系统通常也会被称为主板(motherboard)或芯片。
图1中示例性示出了根据实施例中显示设备与控制装置之间操作场景的示意图。如图1所示,用户可通过控制装置100来操作显示设备200。
其中,控制装置100可以是遥控器100A,其可与显示设备200之间通过红外协议通信、蓝牙协议通信、紫蜂(ZigBee)协议通信或其他短距离通信方式进行通信,用于通过无线或其他有线方式来控制显示设备200。用户可以通过遥控器上按键、语音输入、控制面板输入等输入用户指令,来控制显示设备200。如:用户可以通过遥控器上音量加减键、频道控制键、上/下/左/右的移动按键、语音输入按键、菜单键、开关机按键等输入相应控制指令,来实现控制显示设备200的功能。
控制装置100也可以是智能设备,如移动终端100B、平板电脑、计算机、笔记本电脑等,其可以通过本地网(LAN,Local Area Network)、广域网(WAN,Wide Area Network)、无线局域网((WLAN,Wireless Local Area Network)或其他网络与显示设备200之间通信,并通过与显示设备200相应的应用程序实现对显示设备200的控制。例如,使用在智能设备上运行的应用程序控制显示设备200。该应用程序可以在与智能设备关联的屏幕上通过直观的用户界面(UI,User Interface)为用户提供各种控制。
“用户界面”,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面常用的表现形式是图形用户界面(graphicuserinterface,GUI),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的一个图标、窗口、控件等界面元素,其中控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。
示例的,移动终端100B与显示设备200均可安装软件应用,从而可通过网络通信协议实现二者之间的连接通信,进而实现一对一控制操作的和数据通信的目的。如:可以使移动终端100B与显示设备200建立控制指令协议,将遥控控制键盘同步到移动终端100B上,通过控制移动终端100B上用户界面,实现控制显示设备200的功能;也可以将移动终端100B上显示的音视频内容传输到显示设备200上,实现同步显示功能。
如图1所示,显示设备200还可与服务器300通过多种通信方式进行数据通信。在本申请各个实施例中,可允许显示设备200通过局域网、无线局域网或其他网络与服务器300进行通信连接。服务器300可以向显示设备200提供各种内容和互动。
示例的,显示设备200通过发送和接收信息,以及电子节目指南(EPG,ElectronicProgram Guide)互动,接收软件程序更新,或访问远程储存的数字媒体库。服务器300可以是一组,也可以是多组,可以是一类或多类服务器。通过服务器300提供视频点播和广告服务等其他网络服务内容。
显示设备200,可以是液晶显示器、OLED(Organic Light Emitting Diode)显示器、投影显示设备、智能电视。具体显示设备类型,尺寸大小和分辨率等不作限定,本领技术人员可以理解的是,显示设备200可以根据需要做性能和配置上的一些改变。
显示设备200除了提供广播接收电视功能之外,还可以附加提供计算机支持功能的智能网络电视功能。示例的包括,网络电视、智能电视、互联网协议电视(IPTV)等。
在一些实施例中,显示设备可以不具备广播接收电视功能。
如图1所示,显示设备200上可以连接或设置有摄像头,用于将摄像头拍摄到的画面呈现在本显示设备或其他显示设备的显示界面上,以实现用户之间的交互聊天。具体的,摄像头拍摄到的画面可在显示设备上全屏显示、半屏显示、或者显示任意可选区域。
作为一种可选的连接方式,摄像头通过连接板与显示器后壳连接,固定安装在显示后壳的上侧中部,作为可安装的方式,可以固定安装在显示器后壳的任意位置,能保证其图像采集区域不被后壳遮挡即可,例如,图像采集区域与显示设备的显示朝向相同。
作为另一种可选的连接方式,摄像头通过连接板或者其他可想到的连接器可升降的与显示后壳连接,连接器上安装有升降马达,当用户要使用摄像头或者有应用程序要使用摄像头时,再升出显示器之上,当不需要使用摄像头时,其可内嵌到后壳之后,以达到保护摄像头免受损坏。
作为一种实施例,本申请所采用的摄像头可以为1600万像素,以达到超高清显示目的。在实际使用中,也可采用比1600万像素更高或更低的摄像头。
当显示设备上安装有摄像头以后,显示设备不同应用场景所显示的内容可得到多种不同方式的融合,从而达到传统显示设备无法实现的功能。
示例性的,用户可以在边欣赏音视频节目的同时,与至少一位其他用户(也即至少一台其他终端)进行语音通话。音视频节目的呈现可作为背景画面,音视频节目的声音可作为背景声音,语音通话的窗口显示在背景画面之上,语音通话的声音可通过显示设备与背景声音同时播放。
形象的,可以将显示设备同时播放上述两路声音的功能称为同时播放的“边看边聊”,将同时存在上述两路声音的场景称为“边看边聊”场景。
在另一些示例性的实施例中,“边看边聊”场景下,可以不展示聊天窗口,而仅仅输出聊天语音。也即显示器播放音视频节目,节目声音和聊天声音同时输出。
在另一些示例性是实施例中,“边看边聊”场景下,当用户触发聊天声音静音的指令时,只输出音视频节目声音,而其他用户的聊天语音转换为文字或弹幕的形式,呈现在显示器上。
在另一些示例性的实施例中,在“边看边聊”的场景中,在观看直播视频或网络视频的同时,与其他终端进行至少一路的视频聊天。
另一示例中,用户可以在边进入教育应用学习的同时,与至少一位其他用户进行视频聊天。例如,学生在学习教育应用程序中内容的同时,可实现与老师的远程互动。形象的,可以称该功能为“边学边聊”。
另一示例中,用户在玩纸牌游戏时,与进入游戏的玩家进行视频聊天。例如,玩家在进入游戏应用参与游戏时,可实现与其他玩家的远程互动。形象的,可以称该功能为“边看边玩”。
可选的,游戏场景与视频画面进行融合,将视频画面中人像进行抠图,显示在游戏画面中,提升用户体验。
可选的,在体感类游戏中(如打球类、拳击类、跑步类、跳舞类等),通过摄像头获取人体姿势和动作,肢体检测和追踪、人体骨骼关键点数据的检测,再与游戏中动画进行融合,实现如体育、舞蹈等场景的游戏。
另一示例中,用户可以在K歌应用中,与至少一位其他用户进行视频和语音的交互。形象的,可以称该功能为“边看边唱”。优选的,当至少一位用户在聊天场景进入该应用时,可多个用户共同完成一首歌的录制。
另一个示例中,用户可在本地打开摄像头获取图片和视频,形象的,可以称该功能为“照镜子”。
在另一些示例中,还可以再增加更多功能或减少上述功能。本申请对该显示设备的功能不作具体限定。
图2中示例性示出了根据示例性实施例中控制装置100的配置框图。如图2所示,控制装置100包括控制器110、通信器130、用户输入/输出接口140、存储器190、供电电源180。
控制装置100被配置为可控制所述显示设备200,以及可接收用户的输入操作指令,且将操作指令转换为显示设备200可识别和响应的指令,起到用户与显示设备200之间交互中介作用。如:用户通过操作控制装置100上频道加减键,显示设备200响应频道加减的操作。
在一些实施例中,控制装置100可是一种智能设备。如:控制装置100可根据用户需求安装控制显示设备200的各种应用。
在一些实施例中,如图1所示,移动终端100B或其他智能电子设备,可在安装操控显示设备200的应用之后,起到控制装置100类似功能。如:用户可以通过安装应用,在移动终端100B或其他智能电子设备上可提供的图形用户界面的各种功能键或虚拟按钮,以实现控制装置100实体按键的功能。
控制器110包括处理器112、RAM113和ROM114、通信接口以及通信总线。控制器110用于控制控制装置100的运行和操作,以及内部各部件之间通信协作以及外部和内部的数据处理功能。
通信器130在控制器110的控制下,实现与显示设备200之间控制信号和数据信号的通信。如:将接收到的用户输入信号发送至显示设备200上。通信器130可包括WIFI模块131、蓝牙模块132、NFC模块133等通信模块中至少一种。
用户输入/输出接口140,其中,输入接口包括麦克风141、触摸板142、传感器143、按键144等输入接口中至少一者。如:用户可以通过语音、触摸、手势、按压等动作实现用户指令输入功能,输入接口通过将接收的模拟信号转换为数字信号,以及数字信号转换为相应指令信号,发送至显示设备200。
输出接口包括将接收的用户指令发送至显示设备200的接口。在一些实施例中,可以是红外接口,也可以是射频接口。如:红外信号接口时,需要将用户输入指令按照红外控制协议转化为红外控制信号,经红外发送模块进行发送至显示设备200。再如:射频信号接口时,需将用户输入指令转化为数字信号,然后按照射频控制信号调制协议进行调制后,由射频发送端子发送至显示设备200。
在一些实施例中,控制装置100包括通信器130和输出接口中至少一者。控制装置100中配置通信器130,如:WIFI、蓝牙、NFC等模块,可将用户输入指令通过WIFI协议、或蓝牙协议、或NFC协议编码,发送至显示设备200。
存储器190,用于在控制器110的控制下存储驱动和控制控制装置100的各种运行程序、数据和应用。存储器190,可以存储用户输入的各类控制信号指令。
供电电源180,用于在控制器110的控制下为控制装置100各元件提供运行电力支持。可以电池及相关控制电路。
图3中示例性示出了根据示例性实施例中显示设备200中硬件系统的硬件配置框图。
在采用双硬件系统架构时,硬件系统的结构关系可以如图3所示。为便于表述,以下将双硬件系统架构中的一个硬件系统称为第一硬件系统或第一控制器,并将另一个硬件系统称为第二硬件系统或第二控制器。第一控制器包含第一控制器的各类处理器、各类接口,第二控制器则包含第二控制器的各类处理器、各类接口。第一控制器及第二控制器中可以各自安装有相对独立的操作系统,第一控制器的操作系统和第二控制器的操作系统可以通过通信协议相互通信,示例性的:第一控制器的操作系统的framework层和第二控制器的操作系统的framework层可以进行通信进行命令和数据的传输,从而使显示设备200中存在两个在独立但又存在相互关联的子系统。
如图3所示,第一控制器与第二控制器之间可以通过多个不同类型的接口实现连接、通信及供电。第一控制器与第二控制器之间接口的接口类型可以包括通用输入输出接口(General-purpose input/output,GPIO)、USB接口、HDMI接口、UART接口等。第一控制器与第二控制器之间可以使用这些接口中的一个或多个进行通信或电力传输。例如图3所示,在双硬件系统架构下,可以由外接的电源(power)为第二控制器供电,而第一控制器则可以不由外接电源,而由第二控制器供电。
除用于与第二控制器进行连接的接口之外,第一控制器还可以包含用于连接其他设备或组件的接口,例如图3中所示的用于连接摄像头(Camera)的MIPI接口,蓝牙接口等。
类似的,除用于与第二控制器进行连接的接口之外,第二控制器还可以包含用于连接显示屏TCON(Timer Control Register)的VBY接口,用于连接功率放大器(Amplifier,AMP)及扬声器(Speaker)的i2S接口;以及IR/Key接口,USB接口,Wifi接口,蓝牙接口,HDMI接口,Tuner接口等。
下面结合图4对本申请双硬件系统架构进行进一步的说明。需要说明的是图4仅仅是对本申请双硬件系统架构的一个示例性说明,并不表示对本申请的限定。在实际应用中,两个硬件系统均可根据需要包含更多或更少的硬件或接口。
图4中示例性示出了根据图3显示设备200的硬件架构框图。如图4所示,显示设备200的硬件系统可以包括第一控制器和第二控制器,以及通过各类接口与第一控制器或第二控制器相连接的模块。
第二控制器可以包括调谐解调器220、通信器230、外部装置接口250、控制器210、存储器290、用户输入接口、视频处理器260-1、音频处理器260-2、显示器280、音频输出接口270、供电电源。在其他实施例中第二控制器也可以包括更多或更少的模块。
其中,调谐解调器220,用于对通过有线或无线方式接收广播电视信号,进行放大、混频和谐振等调制解调处理,从而从多个无线或有线广播电视信号中解调出用户所选择电视频道的频率中所携带的音视频信号,以及附加信息(例如EPG数据信号)。根据电视信号广播制式不同,调谐解调器220的信号途径可以有很多种,诸如:地面广播、有线广播、卫星广播或互联网广播等;以及根据调制类型不同,所述信号的调整方式可以数字调制方式,也可以模拟调制方式;以及根据接收电视信号种类不同,调谐解调器220可以解调模拟信号和/或数字信号。
调谐解调器220,还用于根据用户选择,以及由控制器210控制,响应用户选择的电视频道频率以及该频率所携带的电视信号。
在其他一些示例性实施例中,调谐解调器220也可在外置设备中,如外置机顶盒等。这样,机顶盒通过调制解调后输出电视音视频信号,经过外部装置接口250输入至显示设备200中。
通信器230是用于根据各种通信协议类型与外部设备或外部服务器进行通信的组件。例如:通信器230可以包括WIFI模块231,蓝牙通信协议模块232,有线以太网通信协议模块233,及红外通信协议模块等其他网络通信协议模块或近场通信协议模块。
显示设备200可以通过通信器230与外部控制设备或内容提供设备之间建立控制信号和数据信号的连接。例如,通信器可根据控制器的控制接收遥控器100A的控制信号。
外部装置接口250,是提供第二控制器210和第一控制器及外部其他设备间数据传输的组件。外部装置接口可按照有线/无线方式与诸如机顶盒、游戏装置、笔记本电脑等的外部设备连接,可接收外部设备的诸如视频信号(例如运动图像)、音频信号(例如音乐)、附加信息(例如EPG)等数据。
其中,外部装置接口250可以包括:高清多媒体接口(HDMI)端子251、复合视频消隐同步(CVBS)端子252、模拟或数字分量端子253、通用串行总线(USB)端子254、红绿蓝(RGB)端子(图中未示出)等任一个或多个。本申请不对外部装置接口的数量和类型进行限制。
控制器210,通过运行存储在存储器290上的各种软件控制程序(如操作系统和/或各种应用程序),来控制显示设备200的工作和响应用户的操作。
如图4所示,控制器210包括只读存储器RAM214、随机存取存储器ROM213、图形处理器216、CPU处理器212、通信接口218、以及通信总线。其中,RAM214和ROM213以及图形处理器216、CPU处理器212、通信接口218通过总线相连接。
ROM213,用于存储各种系统启动的指令。如在收到开机信号时,显示设备200电源开始启动,CPU处理器212运行ROM中系统启动指令,将存储在存储器290的操作系统拷贝至RAM214中,以开始运行启动操作系统。当操作系统启动完成后,CPU处理器212再将存储器290中各种应用程序拷贝至RAM214中,然后,开始运行启动各种应用程序。
图形处理器216,用于产生各种图形对象,如:图标、操作菜单、以及用户输入指令显示图形等。包括运算器,通过接收用户输入各种交互指令进行运算,根据显示属性显示各种对象。以及包括渲染器,产生基于运算器得到的各种对象,进行渲染的结果显示在显示器280上。
CPU处理器212,用于执行存储在存储器290中操作系统和应用程序指令。以及根据接收外部输入的各种交互指令,来执行各种应用程序、数据和内容,以便最终显示和播放各种音视频内容。
在一些示例性实施例中,CPU处理器212,可以包括多个处理器。所述多个处理器中可包括一个主处理器以及多个或一个子处理器。主处理器,用于在预加电模式中执行显示设备200一些操作,和/或在正常模式下显示画面的操作。多个或一个子处理器,用于执行在待机模式等状态下的一种操作。
通信接口,可包括第一接口218-1到第n接口218-n。这些接口可以是经由网络被连接到外部设备的网络接口。
控制器210可以控制显示设备200的整体操作。例如:响应于接收到用于选择在显示器280上显示UI对象的用户命令,控制器210便可以执行与由用户命令选择的对象有关的操作。
其中,所述对象可以是可选对象中的任何一个,例如超链接或图标。与所选择的对象有关操作,例如:显示连接到超链接页面、文档、图像等操作,或者执行与图标相对应程序的操作。用于选择UI对象用户命令,可以是通过连接到显示设备200的各种输入装置(例如,鼠标、键盘、触摸板等)输入命令或者与由用户说出语音相对应的语音命令。
存储器290,包括存储用于驱动和控制显示设备200的各种软件模块。如:存储器290中存储的各种软件模块,包括:基础模块、检测模块、通信模块、显示控制模块、浏览器模块、和各种服务模块等。
其中,基础模块是用于显示设备200中各个硬件之间信号通信、并向上层模块发送处理和控制信号的底层软件模块。检测模块是用于从各种传感器或用户输入接口中收集各种信息,并进行数模转换以及分析管理的管理模块。
例如:语音识别模块中包括语音解析模块和语音指令数据库模块。显示控制模块是用于控制显示器280进行显示图像内容的模块,可以用于播放多媒体图像内容和UI界面等信息。通信模块,是用于与外部设备之间进行控制和数据通信的模块。浏览器模块,是用于执行浏览服务器之间数据通信的模块。服务模块,是用于提供各种服务以及各类应用程序在内的模块。
同时,存储器290还用于存储接收外部数据和用户数据、各种用户界面中各个项目的图像以及焦点对象的视觉效果图等。
用户输入接口,用于将用户的输入信号发送给控制器210,或者,将从控制器输出的信号传送给用户。示例性的,控制装置(例如移动终端或遥控器)可将用户输入的诸如电源开关信号、频道选择信号、音量调节信号等输入信号发送至用户输入接口,再由用户输入接口转送至控制器;或者,控制装置可接收经控制器处理从用户输入接口输出的音频、视频或数据等输出信号,并且显示接收的输出信号或将接收的输出信号输出为音频或振动形式。
在一些实施例中,用户可在显示器280上显示的图形用户界面(GUI)输入用户命令,则用户输入接口通过图形用户界面(GUI)接收用户输入命令。或者,用户可通过输入特定的声音或手势进行输入用户命令,则用户输入接口通过传感器识别出声音或手势,来接收用户输入命令。
视频处理器260-1,用于接收视频信号,根据输入信号的标准编解码协议,进行解压缩、解码、缩放、降噪、帧率转换、分辨率转换、图像合成等视频数据处理,可得到直接在显示器280上显示或播放的视频信号。
示例的,视频处理器260-1,包括解复用模块、视频解码模块、图像合成模块、帧率转换模块、显示格式化模块等。
其中,解复用模块,用于对输入音视频数据流进行解复用处理,如输入MPEG-2,则解复用模块进行解复用成视频信号和音频信号等。
视频解码模块,用于对解复用后的视频信号进行处理,包括解码和缩放处理等。
图像合成模块,如图像合成器,其用于将图形生成器根据用户输入或自身生成的GUI信号,与缩放处理后视频图像进行叠加混合处理,以生成可供显示的图像信号。
帧率转换模块,用于对输入视频的帧率进行转换,如将输入的24Hz、25Hz、30Hz、60Hz视频的帧率转换为60Hz、120Hz或240Hz的帧率,其中,输入帧率可以与源视频流有关,输出帧率可以与显示器的更新率有关。输入有通常的格式采用如插帧方式实现。
显示格式化模块,用于将帧率转换模块输出的信号,改变为符合诸如显示器显示格式的信号,如将帧率转换模块输出的信号进行格式转换以输出RGB数据信号。
显示器280,用于接收源自视频处理器260-1输入的图像信号,进行显示视频内容和图像以及菜单操控界面。显示器280包括用于呈现画面的显示器组件以及驱动图像显示的驱动组件。显示视频内容,可以来自调谐解调器220接收的广播信号中的视频,也可以来自通信器或外部设备接口输入的视频内容。显示器220,同时显示显示设备200中产生且用于控制显示设备200的用户操控界面UI。
以及,根据显示器280类型不同,还包括用于驱动显示的驱动组件。或者,倘若显示器280为一种投影显示器,还可以包括一种投影装置和投影屏幕。
音频处理器260-2,用于接收音频信号,根据输入信号的标准编解码协议,进行解压缩和解码,以及降噪、数模转换、和放大处理等音频数据处理,得到可以在扬声器272中播放的音频信号。
音频输出接口270,用于在控制器210的控制下接收音频处理器260-2输出的音频信号,音频输出接口可包括扬声器272,或输出至外接设备的发生装置的外接音响输出端子274,如:外接音响端子或耳机输出端子等。
在其他一些示例性实施例中,视频处理器260-1可以包括一个或多个芯片组成。音频处理器260-2,也可以包括一个或多个芯片组成。
以及,在其他一些示例性实施例中,视频处理器260-1和音频处理器260-2,可以为单独的芯片,也可以与控制器210一起集成在一个或多个芯片中。
供电电源,用于在控制器210控制下,将外部电源输入的电力为显示设备200提供电源供电支持。供电电源可以包括安装显示设备200内部的内置电源电路,也可以是安装在显示设备200外部的电源,如在显示设备200中提供外接电源的电源接口。
与第二控制器相类似,如图4所示,第一控制器可以包括控制器310、通信器330、检测器340、存储器390。在某些实施例中还可以包括用户输入接口、视频处理器、音频处理器、显示器、音频输出接口。在某些实施例中,也可以存在独立为第一控制器供电的供电电源。
通信器330是用于根据各种通信协议类型与外部设备或外部服务器进行通信的组件。例如:通信器330可以包括WIFI模块331,蓝牙通信协议模块332,有线以太网通信协议模块333,及红外通信协议模块等其他网络通信协议模块或近场通信协议模块。
第一控制器的通信器330和第二控制器的通信器230也有相互交互。例如,第二控制器的WiFi模块231用于连接外部网络,与外部服务器等产生网络通信。第一控制器的WiFi模块331用于连接至第二控制器的WiFi模块231,而不与外界网络等产生直接连接。因此,对于用户而言,一个如上述实施例中的显示设备至对外显示一个WiFi账号。
检测器340,是显示设备第一控制器用于采集外部环境或与外部交互的信号的组件。检测器340可以包括光接收器342,用于采集环境光线强度的传感器,可以通过采集环境光来自适应显示参数变化等;还可以包括图像采集器341,如相机、摄像头等,可以用于采集外部环境场景,以及用于采集用户的属性或与用户交互手势,可以自适应变化显示参数,也可以识别用户手势,以实现与用户之间互动的功能。
外部装置接口350,提供控制器310与第二控制器或外部其他设备间数据传输的组件。外部装置接口可按照有线/无线方式与诸如机顶盒、游戏装置、笔记本电脑等的外部设备连接。
控制器310,通过运行存储在存储器390上的各种软件控制程序(如用安装的第三方应用等),以及与第二控制器的交互,来控制显示设备200的工作和响应用户的操作。
如图4所示,控制器310包括只读存储器ROM313、随机存取存储器RAM314、图形处理器316、CPU处理器312、通信接口318、以及通信总线。其中,ROM313和RAM314以及图形处理器316、CPU处理器312、通信接口318通过总线相连接。
ROM313,用于存储各种系统启动的指令。CPU处理器312运行ROM中系统启动指令,将存储在存储器390的操作系统拷贝至RAM314中,以开始运行启动操作系统。当操作系统启动完成后,CPU处理器312再将存储器390中各种应用程序拷贝至RAM314中,然后,开始运行启动各种应用程序。
CPU处理器312,用于执行存储在存储器390中操作系统和应用程序指令,和与第二控制器进行通信、信号、数据、指令等传输与交互,以及根据接收外部输入的各种交互指令,来执行各种应用程序、数据和内容,以便最终显示和播放各种音视频内容。
通信接口,可包括第一接口318-1到第n接口318-n。这些接口可以是经由网络被连接到外部设备的网络接口,也可以是经由网络被连接到第二控制器的网络接口。
控制器310可以控制显示设备200的整体操作。例如:响应于接收到用于选择在显示器280上显示UI对象的用户命令,控制器210便可以执行与由用户命令选择的对象有关的操作。
图形处理器316,用于产生各种图形对象,如:图标、操作菜单、以及用户输入指令显示图形等。包括运算器,通过接收用户输入各种交互指令进行运算,根据显示属性显示各种对象。以及包括渲染器,产生基于运算器得到的各种对象,进行渲染的结果显示在显示器280上。
第一控制器的图形处理器316与第二控制器的图形处理器216均能产生各种图形对象。区别性的,若应用1安装于第一控制器,应用2安装在第二控制器,当用户在应用1的界面,且在应用1内进行用户输入的指令时,由第一控制器图形处理器316产生图形对象。当用户在应用2的界面,且在应用2内进行用户输入的指令时,由第二控制器的图形处理器216产生图形对象。
图5中示例性示出了根据示例性实施例中显示设备的功能配置示意图。
如图5所示,第一控制器的存储器390和第二控制器的存储器290分别用于存储操作系统、应用程序、内容和用户数据等,在第一控制器的控制器310和第二控制器的控制器210的控制下执行驱动显示设备200的系统运行以及响应用户的各种操作。第一控制器的存储器390和第二控制器的存储器290可以包括易失性和/或非易失性存储器。
对于第二控制器,存储器290,具体用于存储驱动显示设备200中控制器210的运行程序,以及存储显示设备200内置各种应用程序,以及用户从外部设备下载的各种应用程序、以及与应用程序相关的各种图形用户界面,以及与图形用户界面相关的各种对象,用户数据信息,以及各种支持应用程序的内部数据。存储器290用于存储操作系统(OS)内核、中间件和应用等系统软件,以及存储输入的视频数据和音频数据、及其他用户数据。
存储器290,具体用于存储视频处理器260-1和音频处理器260-2、显示器280、通信接口230、调谐解调器220、输入/输出接口等驱动程序和相关数据。
在一些实施例中,存储器290可以存储软件和/或程序,用于表示操作系统(OS)的软件程序包括,例如:内核、中间件、应用编程接口(API)和/或应用程序。示例性的,内核可控制或管理系统资源,或其它程序所实施的功能(如所述中间件、API或应用程序),以及内核可以提供接口,以允许中间件和API,或应用访问控制器,以实现控制或管理系统资源。
示例的,存储器290,包括广播接收模块2901、频道控制模块2902、音量控制模块2903、图像控制模块2904、显示控制模块2905、音频控制模块2906、外部指令识别模块2907、通信控制模块2908、电力控制模块2910、操作系统2911、以及其他应用程序2912、浏览器模块等等。控制器210通过运行存储器290中各种软件程序,来执行诸如:广播电视信号接收解调功能、电视频道选择控制功能、音量选择控制功能、图像控制功能、显示控制功能、音频控制功能、外部指令识别功能、通信控制功能、光信号接收功能、电力控制功能、支持各种功能的软件操控平台、以及浏览器功能等各类功能。
存储器390,包括存储用于驱动和控制显示设备200的各种软件模块。如:存储器390中存储的各种软件模块,包括:基础模块、检测模块、通信模块、显示控制模块、浏览器模块、和各种服务模块等。由于存储器390与存储器290的功能比较相似,相关之处参见存储器290即可,在此就不再赘述。
示例的,存储器390,包括图像控制模块3904、音频控制模块2906、外部指令识别模块3907、通信控制模块3908、光接收模块3909、操作系统3911、以及其他应用程序3912、浏览器模块等等。控制器210通过运行存储器290中各种软件程序,来执行诸如:图像控制功能、显示控制功能、音频控制功能、外部指令识别功能、通信控制功能、光信号接收功能、电力控制功能、支持各种功能的软件操控平台、以及浏览器功能等各类功能。
区别性的,第二控制器的外部指令识别模块2907和第一控制器的外部指令识别模块3907可识别不同的指令。
示例性的,由于摄像头等图像接收设备与第一控制器连接,因此,第一控制器的外部指令识别模块3907可包括图形识别模块3907-1,图形识别模块3907-1内存储有图形数据库,摄像头接收到外界的图形指令时,与图形数据库中的指令进行对应关系,以对显示设备作出指令控制。而由于语音接收设备以及遥控器与第二控制器连接,因此,第二控制器的外部指令识别模块2907可包括语音识别模块2907-2,语音识别模块2907-2内存储有语音数据库,语音接收设备等接收到外界的语音指令或时,与语音数据库中的指令进行对应关系,以对显示设备作出指令控制。同样的,遥控器等控制装置100与第二控制器连接,由按键指令识别模块与控制装置100进行指令交互。
图6a中示例性示出了根据示例性实施例中显示设备200中软件系统的配置框图。
对第二控制器,如图6a中所示,操作系统2911,包括用于处理各种基础系统服务和用于实施硬件相关任务的执行操作软件,充当应用程序和硬件组件之间完成数据处理的媒介。
一些实施例中,部分操作系统内核可以包含一系列软件,用以管理显示设备硬件资源,并为其他程序或软件代码提供服务。
其他一些实施例中,部分操作系统内核可包含一个或多个设备驱动器,设备驱动器可以是操作系统中的一组软件代码,帮助操作或控制显示设备关联的设备或硬件。驱动器可以包含操作视频、音频和/或其他多媒体组件的代码。示例的,包括显示器、摄像头、Flash、WiFi和音频驱动器。
其中,可访问性模块2911-1,用于修改或访问应用程序,以实现应用程序的可访问性和对其显示内容的可操作性。
通信模块2911-2,用于经由相关通信接口和通信网络与其他外设的连接。
用户界面模块2911-3,用于提供显示用户界面的对象,以供各应用程序访问,可实现用户可操作性。
控制应用程序2911-4,用于控制进程管理,包括运行时间应用程序等。
事件传输系统2914,可在操作系统2911内或应用程序2912中实现。一些实施例中,一方面在在操作系统2911内实现,同时在应用程序2912中实现,用于监听各种用户输入事件,将根据各种事件指代响应各类事件或子事件的识别结果,而实施一组或多组预定义的操作的处理程序。
其中,事件监听模块2914-1,用于监听用户输入接口输入事件或子事件。
事件识别模块2914-2,用于对各种用户输入接口输入各类事件的定义,识别出各种事件或子事件,且将其传输给处理用以执行其相应一组或多组的处理程序。
其中,事件或子事件,是指显示设备200中一个或多个传感器检测的输入,以及外界控制设备(如控制装置100等)的输入。如:语音输入各种子事件,手势识别的手势输入子事件,以及控制装置的遥控按键指令输入的子事件等。示例的,遥控器中一个或多个子事件包括多种形式,包括但不限于按键按上/下/左右/、确定键、按键按住等中一个或组合。以及非实体按键的操作,如移动、按住、释放等操作。
界面布局管理模块2913,直接或间接接收来自于事件传输系统2914监听到各用户输入事件或子事件,用于更新用户界面的布局,包括但不限于界面中各控件或子控件的位置,以及容器的大小或位置、层级等与界面布局相关各种执行操作。
由于第一控制器的操作系统3911与第二控制器的操作系统2911的功能比较相似,相关之处参见操作系统2911即可,在此就不再赘述。
如图6b中所示,显示设备的应用程序层包含可在显示设备200执行的各种应用程序。
第二控制器的应用程序层2912可包含但不限于一个或多个应用程序,如:视频点播应用程序、应用程序中心、游戏应用等。第一控制器的应用程序层3912可包含但不限于一个或多个应用程序,如:直播电视应用程序、媒体中心应用程序等。需要说明的是,第一控制器和第二控制器上分别包含什么应用程序是根据操作系统和其他设计确定的,本发明无需对第一控制器和第二控制器上所包含的应用程序做具体的限定和划分。
直播电视应用程序,可以通过不同的信号源提供直播电视。例如,直播电视应用程可以使用来自有线电视、无线广播、卫星服务或其他类型的直播电视服务的输入提供电视信号。以及,直播电视应用程序可在显示设备200上显示直播电视信号的视频。
视频点播应用程序,可以提供来自不同存储源的视频。不同于直播电视应用程序,视频点播提供来自某些存储源的视频显示。例如,视频点播可以来自云存储的服务器端、来自包含已存视频节目的本地硬盘储存器。
媒体中心应用程序,可以提供各种多媒体内容播放的应用程序。例如,媒体中心,可以为不同于直播电视或视频点播,用户可通过媒体中心应用程序访问各种图像或音频所提供服务。
应用程序中心,可以提供储存各种应用程序。应用程序可以是一种游戏、应用程序,或某些和计算机系统或其他设备相关但可以在显示设备中运行的其他应用程序。应用程序中心可从不同来源获得这些应用程序,将它们储存在本地储存器中,然后在显示设备200上可运行。
由于第一控制器及第二控制器中可能分别安装有独立的操作系统,从而使显示设备200中存在两个在独立但又存在相互关联的子系统。例如,第一控制器和N均可以独立安装有安卓(Android)及各类APP,使得每个芯片均可以实现一定的功能,并且使第一控制器和第二控制器协同实现某项功能。
图7中示例性示出了根据示例性实施例中显示设备200中用户界面的示意图。如图7所示,用户界面包括多个视图显示窗口,示例的,第一视图显示窗口201和播放画面202,其中,播放画面包括布局一个或多个不同项目。以及用户界面中还包括指示项目被选择的选择器,可通过用户输入而移动选择器的位置,以改变选择不同的项目。
需要说明的是,多个视图显示窗口可以呈现不同层级的显示画面。如,第一视图显示窗口可呈现视频聊天项目内容,第二视图显示窗口可呈现应用层项目内容(如,网页视频、VOD展示、应用程序画面等)。
可选的,不同视图显示窗口的呈现存在优先级区别,优先级不同的视图显示窗口之间,视图显示窗口的显示优先级不同。如,系统层的优先级高于应用层的优先级,当用户在应用层使用获取选择器和画面切换时,不遮挡系统层的视图显示窗口的画面展示;以及,根据用户的选择使应用层的视图显示窗口的大小和位置发生变化时,系统层的视图显示窗口的大小和位置不受影响。
也可以呈现相同层级的显示画面,此时,选择器可以在第一视图显示窗口和第二视图显示窗口之间做切换,以及当第一视图显示窗口的大小和位置发生变化时,第二视图显示窗口的大小和位置可随及发生改变。由于A芯片及N芯片中可能分别安装有独立的操作系统,从而使显示设备200中存在两个在独立但又存在相互关联的子系统。例如,A芯片(第一控制器)和N芯片(第二控制器)均可以独立安装有安卓(Android)及各类APP,使得每个芯片均可以实现一定的功能,并且使A芯片和N芯片协同实现某项功能。由于随着用户使用需求的不断变化,显示设备内置的系统需要不断升级来满足用户的需求。
本文发明一种基于双系统的OTA升级方法,应用于具有双系统架构或多系统架构的显示设备中。在对显示设备的双系统(第一控制器和第二控制器)或多系统进行OTA升级时,需要实现双系统或多系统的同步升级,避免出现一个系统升级成功,而其他系统升级失败的情况,导致显示设备无法正常运行。因此,本实施例提供的方法,基于双系统或多系统之间的交互以及运营端升级策略的配置,实现双系统或多系统的稳定升级,同时保证升级之后两个系统的版本兼容性,使显示设备能够正常使用,并保证双系统设备也能通过OTA的方式向用户推送新版本的能力。
显示设备为解决当前版本新发现的系统问题以及推送给用户最新开发的特性,通常采用OTA升级机制,以将更稳定、更好用的系统提供给用户升级。而在双系统或多系统架构中,以双系统为例,双系统包括第一控制器和第二控制器,第二控制器为主系统,第一控制器为从系统。在升级时,避免第二控制器能够检测到升级策略,而第一控制器检测不到升级策略,如果两个版本之间的差异很小,显示设备不会有什么异常,但是如果差别很大,就会造成开不开机、开机后无法正常使用等问题。因此,在针对具有双系统或多系统架构的显示设备,需要保证系统升级的同步性。
第二控制器为连接外部网络的系统,在系统升级时,如图8所示,第二控制器通过互联网与OTA服务器400建立联系,OTA服务器400用于为第二控制器提供OTA升级策略。也就是说,OTA服务器400通过互联网与包括第二控制器(系统A)和第一控制器(系统B)的显示设备200建立联系,显示设备200通过OTA服务器400检测升级策略,判断自己是否要升级。
传统Android系统进行OTA升级时,每个系统都配置有自己的OTA升级包,在需要进行系统升级时,只需要下载升级即可。针对双系统,本实施例为两个系统分别配置OTA升级包,为了避免两个系统在检测策略时发生不一致,对这两个OTA升级包进行处理,即将两个OTA升级包打成一个OTA升级包。这样不管是OTA服务器部署,还是显示设备检查策略,只需要检查一次即可,以解决不一致的问题。
而OTA服务器部署时,也只需要针对特定的设备进行部署OTA升级包即可,不必每个系统单独部署OTA,减轻OTA服务器部署压力,防止部署阶段出现问题,也解决升级策略检查的不一致问题。
在系统请求升级时,本实施例中,将检测OTA升级包的能力仅由一个系统执行,即第二控制器,避免两个系统同时检测与下载升级策略,减轻OTA服务器的压力。需要说明的是,上述仅以双系统架构为例进行说明,而在针对多系统时,可相应配置多个从系统,并将每个系统(包括主系统和多个从系统)的OTA升级包打包成一个统一的OTA升级包,且执行检测能力的系统依然为主系统。本实施例提供的OTA升级方法,均以双系统为例,而针对多系统的情况,可参照双系统的实现过程。在双系统架构中,主系统和从系统为一对一的关系,而在多系统架构中,主系统和从系统为一对多的关系,多系统架构中的多个从系统的执行内容均可参照双系统架构中从系统的执行内容。
本发明实施例提供的一种基于双系统的OTA升级方法,用于具有第一控制器和第二控制器的显示设备,第二控制器用于与OTA服务器进行通信,执行主体为第二控制器,如图9所示的双系统架构示意图,第二控制器310通过有线或WiFi的形式与外部网络(互联网)连接,第二控制器310和第一控制器210之间通过网线、串口或其他连接方式进行连接。第二控制器310为主动通信方,通过外部网络接收用户通过遥控器下发的各种指令,经过数据处理后,将执行指令发送至第一控制器,以由第一控制器执行相应的操作。
如图10所示,本实施例提供的方法进行双系统OTA升级时,第二控制器由OTA服务器400请求升级策略。请求升级策略时,第二控制器(系统A)获取本地的系统信息和第一控制器(系统B)的系统信息,将第二控制器信息和第一控制器信息组装后(A+B系统信息),向OTA服务器400端请求升级策略。OTA服务器400查询当前是否有和A+B系统信息匹配的升级策略,查询到之后向第二控制器(系统A)返回新版本的升级策略(A+B升级数据)。第二控制器(系统A)解析升级策略得到第一升级数据和第二升级数据,并将适用于第一控制器(系统B)的第一升级数据发送至第一控制器的第一升级模块,将适用于第二控制器(系统A)的第二升级数据传递给第二控制器的第二升级模块,进而实现第一控制器(系统B)和第二控制器(系统A)的同步升级。
具体地,如图11所示,本发明实施例提供的一种基于双系统的OTA升级方法,应用于第二控制器,所述方法包括以下步骤:
S1、获取OTA服务器发送的双系统OTA升级策略。
在对双系统进行升级时,由第二控制器向OTA服务器请求升级策略,而为保证根据获取到的升级策略,在第一控制器和第二控制器分别安装升级后,第一控制器和第二控制器的升级后版本能够兼容,且升级过程稳定,以保证显示设备能够正常运行。因此,本实施例提供的方法,在获取升级策略时,需要根据双系统的信息发送请求指令,以便OTA服务器能够提供分别与第一控制器和第二控制器的信息匹配的升级策略。
如图12所示,本实施例提供的方法可按照下述步骤,获取OTA服务器发送的双系统OTA升级策略:
S11、获取存储有第二本地版本的第二控制器信息。
S12、发送信息获取指令至第一控制器。
S13、接收第一控制器根据所述信息获取指令返回的存储有第一本地版本的第一控制器信息。
第二控制器获取本地系统信息,即第二控制器信息,第二控制器信息中存储有第二本地版本,即系统A的当前版本,同时向第一控制器发送信息获取指令,第一控制器根据信息获取指令将第一控制器信息返回到第二控制器,第一控制器信息中存储有第一本地版本,即系统B的当前版本。
S14、根据存储有第二本地版本的第二控制器信息和存储有第一本地版本的第一控制器信息生成双系统OTA升级请求信息。
S15、根据双系统OTA升级请求信息,向OTA服务器发送请求双系统OTA升级策略指令;
S16、接收OTA服务器返回的双系统OTA升级策略。
第二控制器在接收到第一控制器信息后,将存储有第一本地版本的第一控制器信息和存储有第二本地版本的第二控制器信息进行组装,得到双系统OTA升级请求信息,并根据双系统OTA升级请求信息生成请求双系统OTA升级策略指令,以便于OTA服务器根据请求双系统OTA升级策略指令,匹配出与第一控制器和第二控制器适应的升级策略,并将匹配出的双系统OTA升级策略发送至第二控制器。双系统OTA升级策略中包括用于升级第一控制器的升级策略和用于升级第二控制器的升级策略。
而为保证第一控制器和第二控制器在升级后的版本兼容性,需要OTA服务器在为第一控制器和第二控制器匹配升级策略时,提前进行兼容性的检测,只有具有兼容性的各系统升级策略才会被下发至第二控制器。
因此,本实施例提供的方法,如图13所示,OTA服务器按照下述步骤筛选具有兼容性的升级策略,即接收OTA服务器返回的双系统OTA升级策略,包括:
S161、由OTA服务器检测第一控制器的多个升级策略,以及,第二控制器的多个升级策略。
OTA服务器接收到第二控制器发送的请求双系统OTA升级策略指令后,检测是否有针对各个系统的新版本的升级策略,检测第一控制器的多个升级策略,以及,第二控制器的多个升级策略。
由于第二控制器在向OTA服务器发送请求双系统OTA升级策略指令时,会同时上报第一控制器信息和第二控制器信息,因此,OTA服务器可根据第一控制器信息查询是否有符合第一控制器的新版本的升级策略,并根据第二控制器信息查询是否有符合第二控制器的新版本的升级策略。通常情况下,针对每个系统的升级策略会有多种。
S162、判断第一控制器的多个升级策略与第二控制器的多个升级策略是否具有兼容性。
OTA服务器在查询升级策略时,只有版本兼容的升级策略才会被下发,因此,需要将第一控制器的多个升级策略与第二控制器的多个升级策略分别进行匹配,以确定第一控制器的多个升级策略中的哪个升级策略可以与第二控制器的多个升级策略中的哪个升级策略之间具有兼容性。
而不具有兼容性的两个升级策略则不会被下发至第二控制器,以免第一控制器和第二控制器根据不兼容的升级策略升级后,导致两个系统升级后的版本不兼容,影响显示设备的正常运行。
S163、如果存在第一控制器的升级策略与第二控制器的升级策略具有兼容性,则根据具有兼容性的第一控制器的升级策略和第二控制器的升级策略,生成双系统OTA升级策略。
如果确定出第一控制器的多个升级策略中的一个升级策略可以与第二控制器的多个升级策略中的一个升级策略之间具有兼容性,则将此两个升级策略生成双系统OTA升级策略。
例如,第一控制器有新版本的升级策略A1、A2,第二控制器有新版本的升级策略B1、B2。当A1和B1、B2均不兼容,A2也和B1、B2均不兼容时,OTA服务器不会下发升级策略。当A1和B1、B2均不兼容,A2和B1不兼容,但是A2和B2兼容时,OTA服务器会下发A2B2的升级策略,此时双系统OTA升级策略即为A2B2组合的升级策略。
S164、将双系统OTA升级策略发送至第二控制器。
OTA服务器在获得匹配第一控制器和第二控制器的升级策略后,将双系统OTA升级策略发送至第二控制器,以便第二控制器根据双系统OTA升级策略执行后续的升级过程。
为便于第一控制器和第二控制器在后续升级时能够准确获取到相应的升级策略,需将双系统OTA升级策略进行区分。本实施例提供的方法,OTA服务器在生成双系统OTA升级策略时,分别在第一控制器的升级策略中和第二控制器的升级策略中预置不同的标志来进行区分。而第二控制器在接收到双系统OTA升级策略后,下载到本地的升级策略,分别以不同的名字命名,即第一控制器和第二控制器的升级策略的名字不同,以进行区分,避免出现第二控制器根据第一控制器的升级策略进行升级,以及,第一控制器根据第二控制器的升级策略进行升级的情况。
OTA服务器在将双系统OTA升级策略发送至第二控制器后,由第二控制器向第一控制器同步升级策略,以告知第一控制器准备进入升级模式,便于后续第一控制器和第二控制器可以同步进入升级模式。
S2、解析双系统OTA升级策略,得到双系统OTA升级数据;双系统OTA升级数据包括用于升级第一控制器的第一升级数据和用于升级第二控制器的第二升级数据。
第二控制器在获取到双系统OTA升级策略之后,对双系统OTA升级策略进行解析,以获得用于对双系统进行升级的双系统OTA升级数据。
根据OTA服务器预置的标志,解析后的升级数据中,第一控制器和第二控制器的升级数据的命名不同,即双系统OTA升级数据中包括用于升级第一控制器的第一升级数据和用于升级第二控制器的第二升级数据。
解析过程即为下载过程,本实施例中,如图14所示,解析双系统OTA升级策略,得到双系统OTA升级数据,包括:
S21、解析双系统OTA升级策略,确定升级数据下载地址。
S22、根据升级数据下载地址,下载双系统OTA升级数据。
为从双系统OTA升级策略中获得用于升级第一控制器的第一升级数据和用于升级第二控制器的第二升级数据,需要从双系统OTA升级策略中获得升级数据下载地址。第二控制器根据升级数据下载地址,即可通过下载得到双系统OTA升级数据。
由于网络等原因,第二控制器在下载双系统OTA升级数据时,极易出现异常情况,即下载的数据缺失或不准确,因此,需要对双系统OTA升级数据进行校验,避免第一控制器和第二控制器根据异常的升级数据进行升级,导致第一控制器和第二控制器的升级后版本不兼容,影响显示设备的正常运行。
S3、校验双系统OTA升级数据的完整性,以在双系统OTA升级数据的完整性校验成功的情况下,将双系统OTA升级数据中的第一升级数据发送至第一控制器,以及,将双系统OTA升级数据中的第二升级数据发送至第二控制器。
本实施例提供的方法,用于校验双系统OTA升级数据的完整性,完整性是指双系统升级数据是否全部被下载下来,在下载过程中没有缺失,且与OTA服务器下发的双系统OTA升级策略一致。
第二控制器从网络上将双系统OTA升级数据下载完成之后,先对双系统OTA升级数据进行完整性校验,若完整性校验失败,则表示下载的双系统OTA升级数据同OTA服务器下发的双系统OTA升级策略不一致,因此,需将双系统OTA升级数据删除之后进行重新下载。
在完成完整性校验之后,即可将用于升级第一控制器的第一升级数据发送至第一控制器,将用于升级第二控制器的第二升级数据发送至第二控制器。
具体地,如图15所示,校验双系统OTA升级数据的完整性,以在双系统OTA升级数据的完整性校验成功的情况下,将双系统OTA升级数据中的第一升级数据发送至第一控制器,以及,将双系统OTA升级数据中的第二升级数据发送至第二控制器,包括:
S31、根据第二控制器解析的双系统OTA升级数据和OTA服务器返回的双系统OTA升级策略,判断双系统OTA升级数据和双系统OTA升级策略是否一致。
S32、如果双系统OTA升级数据和双系统OTA升级策略一致,确定双系统OTA升级数据完整。
为确保第二控制器下载得到的双系统OTA升级数据没有缺失数据,则将双系统OTA升级数据和OTA服务器返回的双系统OTA升级策略进行对比,若二者的内容是一致的,则说明第二控制器下载的双系统OTA升级数据没有缺失数据,是完整的。
如果双系统OTA升级数据和双系统OTA升级策略不一致,说明当前下载的双系统OTA升级数据有缺失数据现象,该双系统OTA升级数据不能被继续使用,因此,需结束当前次的升级过程,并删除已通过解析得到的双系统OTA升级数据,重新解析双系统OTA升级策略。
S33、在双系统OTA升级数据的完整性校验成功的情况下,将双系统OTA升级数据解压为第一升级数据和第二升级数据。
S34、将第一升级数据发送至第一控制器,以及,将第二升级数据发送至第二控制器。
在双系统OTA升级数据的完整性校验成功时,即双系统OTA升级数据和双系统OTA升级策略一致的情况下,说明第二控制器下载的双系统OTA升级数据可以被继续使用以执行后续的升级操作。此时,将双系统OTA升级数据进行解压,以便于获得用于升级第一控制器的第一升级数据和用于升级第二控制器的第二升级数据。
双系统OTA升级数据为完整时,即说明第一控制器和第二控制器可以使用双系统OTA升级数据进行后序升级操作,因此,需将用于升级第一控制器的第一升级数据发送至第一控制器,将用于升级第二控制器的第二升级数据发送至第二控制器。
可见,本实施例提供的方法,第二控制器对下载得到的双系统OTA升级数据进行完整性校验,并在得到完整性校验成功结果的情况下,解压双系统OTA升级数据,并将得到的第一升级数据发送至第一控制器,第二升级数据发送至第二控制器。校验过程可以保证双系统OTA升级数据不会出现缺失现象,避免第一控制器和第二控制器根据异常的升级数据进行升级,以保证第一控制器和第二控制器的升级后版本具有兼容性,使得显示设备正常运行。
基于上述实施例提供的OTA升级方法,在第二控制器完成双系统OTA升级数据下载工作之后,对双系统OTA升级数据进行完整性的校验,而在本实施例的OTA升级方法中,在校验完整性之后,还执行对OTA升级数据进行有效性的校验过程,以进一步保证下载的双系统OTA升级数据的准确和完整。
具体地,如图16所示,本实施例提供的方法,还包括:
S35、由第二控制器对第二升级数据的有效性进行校验。
第二控制器在完成对双系统OTA升级数据的完整性校验后,将双系统OTA升级数据解压为第一升级数据和第二升级数据,并将第一数据发送至第一控制器,将第二升级数据发送至第二控制器。
之后,由第二控制器对第二升级数据进行有效性的校验,由第一控制器对第一升级数据进行有效性的校验。有效性用于校验OTA服务器配置的升级策略是否合法,不合法的升级数据则不能使用。
具体地,如图17所示,由第二控制器对第二升级数据的有效性进行校验,包括:
S351、发送签名标识获取指令至OTA服务器。
在验证有效性时,采取的验证依据是签名标识。OTA服务器在生成双系统OTA升级策略时,对每个系统的升级策略均分别预置不同标志以进行区分,该标志即为签名标识。
第二控制器向OTA服务器发送签名标识获取指令,以获取OTA服务器的前面标识。
S352、接收OTA服务器根据签名标识获取指令返回的第二控制器的升级策略的签名标识。
OTA服务器接收到签名标识获取指令后,随即向第二控制器发送用于升级第二控制器的升级策略的签名标识。
S353、获取第二升级数据的签名标识。
S354、判断第二升级数据的签名标识与第二控制器的升级策略的签名标识是否一致。
第二控制器在接收到自身的升级策略的签名标识之后,获取经过下载和解压得到的第二升级数据的签名标识,将两个签名标识进行对比,如果一致,则说明第二升级数据有效,如果不一致,则说明第二升级数据无效。
S355、如果第二升级数据的签名标识与第二控制器的升级策略的签名标识一致,确定第二升级数据有效。
在第二升级数据的签名标识与第二控制器的升级策略的签名标识一致时,说明第二控制器下载的第二数据合法有效,第二升级数据可被继续使用。
而如果第二升级数据的签名标识与第二控制器的升级策略的签名标识不一致,即签名标识校验失败,则说明OTA服务器为第二控制器配置的升级策略有问题,此时,需删除已下载的第二升级数据,并将该配置错误的信息上报给OTA服务器,并结束此次升级过程。
S36、在第二升级数据的有效性校验成功的情况下,由第一控制器对第一升级数据的有效性进行校验。
第一控制器对第一升级数据进行有效性校验时,其校验方式可相应参照第二控制器的校验过程。OTA服务器接收到第二控制器发送的签名标识指令后,返回的签名标识包括用于升级第二控制器的升级策略的签名标识,还包括用于升级第一控制器的升级策略的签名标识,第二控制器再将用于第一控制器的升级策略的签名标识发送至第一控制器。
第一控制器获取第一升级数据的签名标识,将第一升级数据的签名标识与用于第一控制器的升级策略的签名标识进行对比,如果第一升级数据的签名标识与用于第一控制器的升级策略的签名标识一致,如果一致,则说明第一升级数据合法有效,第一升级数据可被继续使用。
而如果第一升级数据的签名标识与用于第一控制器的升级策略的签名标识不一致,即签名标识校验失败,则说明OTA服务器为第一控制器配置的升级策略有问题,此时,需删除已下载的第一升级数据,第一控制器校验有效性失败之后,向第二控制器同步校验结果,并将该配置错误的信息通过第二控制器上报给OTA服务器,并结束此次升级过程。
只有第一升级数据和第二升级数据均校验有效性成功之后,即第一升级数据对于第一控制器合法有效,第二升级数据对于第二控制器合法有效,才可以进行后序的升级流程。
S37、在第一升级数据的有效性校验成功的情况下,确定第一升级数据为第一控制器的升级策略,第二升级数据为第二控制器的升级策略。
第一升级数据校验成功后,即完成双系统OTA升级数据的有效性校验,此时,第一升级数据为第一控制器的升级策略,第二升级数据为第二控制器的升级策略,也就是说,在后序升级流程中,第一控制器可以根据第一升级数据进行升级,第二控制器可以根据第二升级数据进行升级。
在前述实施例中提出的方法,如图18所示,在对双系统OTA升级数据进行完整性校验成功之后,解压双系统OTA升级数据得到第一升级数据和第二升级数据,并分别将第一升级数据发送至第一控制器,将第二升级数据发送至第二控制器,之后,再由第一控制器对第一升级数据进行有效性校验,由第二控制器对第二升级数据进行有效性校验。
而在其他实施例提出的方法,如图19所示,向第一控制器分发第一升级数据的时机,还可在第二控制器对第二升级数据完成有效性校验之后,即在对双系统OTA升级数据进行完整性校验成功之后,第二控制器解压双系统OTA升级数据得到第一升级数据和第二升级数据,将第二升级数据发送至第二控制器进行有效性校验,在校验成功的情况下,再将第一升级数据发送至第一控制器进行有效性校验。校验完整性和有效性的具体内容可参照前述实施例的内容,此处不再赘述。
在实际进行校验时,可选取上述两种实现方式的任意一种,本实施例不做具体限定。
对第二控制器下载的双系统OTA升级数据进行完整性和有效性校验,可以保证双系统OTA升级数据不会出现缺失现象,也不会出现配置错误的情况,避免第一控制器和第二控制器根据异常的升级数据进行升级,以保证第一控制器和第二控制器的升级后版本具有兼容性,使得显示设备正常运行。
在将第一升级数据发送至第一控制器(系统B),第二升级数据发送至第二控制器(系统A)之后,即做好双系统同步升级的准备过程。为保证可以同时触发第一控制器和第二控制器的OTA升级功能,需要分别在第一控制器和第二控制器中写入升级标志。
S4、生成升级标志写入指令,发送至第一控制器和第二控制器,所述升级标志写入指令用于使第一控制器和第二控制器中分别写入升级标志;
在完成双系统升级准备过程后,即可进入升级过程。实现双系统同时触发OTA升级的前提是,由第二控制器控制双系统的掉电和上电,第一控制器和第二控制器之间可交互通信,第一控制器和第二控制器的升级数据都准备完成。
在满足上述前提要求之后,即可在第一控制器和第二控制器中分别写入升级标志。升级标志是指在系统的引导目录中写入的标志,用于引导后续程序进入升级模式。根据升级标志,即可实现双系统进入升级模式,而不是进入正常启动状态。
在双系统中写入升级标志时,由第二控制器生成升级写入标志,并分别发送至第一控制器和第二控制器,以先在第二控制器中写入,然后再在第一控制器中写入,具体过程如下。
本实施例中,如图20所示,发送升级标志写入指令至第二控制器,在第二控制器根据升级标志写入指令写入升级标志之后,第一控制器写入升级标志,包括:
S41、生成升级标志写入指令,由所述第二控制器根据所述升级标志写入指令写入升级标志;
S42、判断第二控制器中的升级标志是否写入成功。
S43、在第二控制器写入升级标志成功的情况下,将所述升级标志写入指令发送至第一控制器,以由所述第一控制器根据升级标志写入指令在第一控制器中写入升级标志。
在完成双系统的升级数据的准备过程之后,第二控制器生成升级标志写入指令,先由第二控制器自行写入升级标志。并且,在第二控制器写入成功时,将升级标志写入指令发送至第一控制器,第一控制器根据升级标志写入指令在第一控制器中写入升级标志。
如果第二控制器未写入成功,则直接结束本次升级流程,而不再通知第一控制器执行写入升级标志程序。
除上述写入升级标志的方法外,如图21所示,另一实施例还可采用如下方法:第二控制器先发送升级标志写入指令至第一控制器,以由第一控制器根据升级标志写入指令在第一控制器中写入升级标志。第二控制器接收第一控制器返回的升级标志写入结果之后,再执行写入升级标志的程序。
针对此种情况,在完成双系统的升级数据的准备过程之后,先由第一控制器写入升级标志,第二控制器在接收到第一控制器的同步结果之后再写入升级标志。第二控制器生成升级标志写入指令,发送至第一控制器,第一控制器根据升级标志写入指令在第一控制器中写入升级标志。
第一控制器在完成写入升级标志的过程之后,向第二控制器同步写入结果,即向第二控制器发送升级标志写入结果,以通知第二控制器可以进行升级标志写入过程。
第一控制器完成升级标志写入之后向第二控制器返回升级标志写入结果,需由第二控制器判断第一控制器的升级标志是否写入成功。如果未成功,则采用重试机制,再次向第一控制器发送升级标志写入指令,第一控制器根据新的升级标志写入指令再次进行升级标志的写入,并向第二控制器返回升级标志写入结果。第二控制器再次判断第一控制器的升级标志是否写入成功,直到第一控制器写入成功之后,第二控制器再执行写入升级标志的程序。而如果在重试次数阈值内,第一控制器依然没有写入成功,则结束此次升级过程。
第二控制器在完成写入升级标志之后,也要进行校验过程,判断第二控制器的升级标志是否写入成功。如果写入成功,则执行后续步骤;如果未写入成功,则结束此次升级过程。在双系统均成功完成升级标志写入过程后,即可进行双系统的同步升级触发操作。
S5、根据第一控制器的升级标志和第二控制器的升级标志,控制第一控制器和第二控制器重启,使第一控制器根据第一升级数据进行升级,第二控制器根据第二升级数据进行升级。
在第一控制器和第二控制器均已写入升级标志之后,第二控制器生成重启指令,发送至第一控制器,控制第一控制器和第二控制器掉电以进行重启。由于第一控制器和第二控制器中均已写入升级标志,因此,第一控制器和第二控制器在上电启动之后,都会进入升级模式,从而实现双系统的同时触发升级。
升级时,第一控制器进入升级模式,第一控制器中的第一升级模块根据第一升级数据进行升级,第二控制器进入升级模块,第二控制器中的第二升级模块根据第二升级数据进行升级。
在第一控制器和第二控制器均完成升级之后,第一控制器向第二控制器同步升级状态,此时,第二控制器向显示设备的显示屏发送指令,更新显示界面的显示界面,以告知用户当前双系统均以升级完毕。
具体地,如图22所示,该同步过程还包括:
S901、检测第一控制器的升级状态和第二控制器的升级状态。
S902、在第二控制器的升级状态为成功状态时,接收第一控制器返回的升级结果,以同步第一控制器和第二控制器的升级结果。
上述实施例提供的OTA升级方法,如图23所示的总数据流图,第二控制器(系统A)根据第一控制器的本地系统信息(存储有第一本地版本的第一控制器信息)和第二控制器的本地系统信息(存储有第二本地版本的第二控制器信息)向OTA服务器请求双系统OTA升级策略,并在校验完整性和有效性成功之后,使第一控制器(系统B)和第二控制器(系统A)同步进入升级模式,并在进行升级时,对第一控制器的升级状态和第二控制器的升级状态进行检测。
在双系统进行升级时,由第二控制器实时监测自身的升级状态和第一控制器的升级状态,第一控制器完成升级后返回升级完成结果,第二控制器在完成升级时,将第一控制器和第二控制器的升级结果同步。完成结果同步后,发送更换显示指令至显示屏,由显示屏更新当前显示的内容,以告知用户当前双系统均以升级完毕。本实施例在双系统同步升级结果之后再显示升级成功的内容,可以保证在双系统升级时,使用户感觉像是只对一个系统进行升级一样,提高用户体验。
由以上技术方案可知,本发明实施例提供的一种基于双系统的OTA升级方法,包括:第二控制器接收OTA服务器发送的双系统OTA升级策略,并经过解析得到双系统OTA升级数据,在对双系统OTA升级数据完成完整性的校验之后,将第一升级数据发送至第一控制器,将第二升级数据发送至第二控制器,第一升级数据和第二升级数据具有兼容性。再分别在第一控制器和第二控制器中写入升级标志,以保证第一控制器和第二控制器同步进入升级模式。重启第一控制器和第二控制器,使第一控制器根据第一升级数据进行升级,第二控制器根据第二升级数据进行升级。可见,本实施例提供的方法,可实现双系统的同步、稳定的升级,同时保证升级之后两个系统的版本的兼容性,使显示设备能够正常使用,并保证双系统设备也能通过OTA的方式向用户推送新版本的能力。
参见图8和图9,图8中示例性示出了根据实施例中基于双系统的OTA升级系统的结构示意图,图9中示例性示出了根据实施例中双系统架构图。本发明实施例提供的一种基于双系统的OTA升级系统,用于执行图11至图23所对应的基于双系统的OTA升级方法。
具体地,本发明实施例提供的一种基于双系统的OTA升级系统,包括:具有第一控制器210和第二控制器310的显示设备,以及,OTA服务器400,所述第二控制器310通过互联网与所述OTA服务器400通信,所述第二控制器310通过串口或网线与第一控制器210连接;所述OTA服务器400用于根据第二控制器310发送的请求双系统OTA升级策略指令,发送双系统OTA升级策略至第二控制器310。
所述第一控制器210用于根据第二控制器310的指令执行相应操作;所述第二控制器310用于获取OTA服务器发送的双系统OTA升级策略;解析所述双系统OTA升级策略,得到双系统OTA升级数据;所述双系统OTA升级数据包括用于升级第一控制器的第一升级数据和用于升级第二控制器的第二升级数据;校验所述双系统OTA升级数据的完整性,以在所述双系统OTA升级数据的完整性校验成功的情况下,将所述双系统OTA升级数据中的第一升级数据发送至第一控制器,以及,将所述双系统OTA升级数据中的第二升级数据发送至第二控制器;生成升级标志写入指令,发送至所述第一控制器和第二控制器,所述升级标志写入指令用于使所述第一控制器和第二控制器中分别写入升级标志;根据所述第一控制器的升级标志和第二控制器的升级标志,控制第一控制器和第二控制器重启,使所述第一控制器根据第一升级数据进行升级,第二控制器根据第二升级数据进行升级。
可选地,所述第二控制器310还用于:获取存储有第二本地版本的第二控制器信息;发送信息获取指令至第一控制器;接收所述第一控制器根据所述信息获取指令返回的存储有第一本地版本的第一控制器信息;根据所述存储有第二本地版本的第二控制器信息和存储有第一本地版本的第一控制器信息生成双系统OTA升级请求信息;根据所述双系统OTA升级请求信息,向OTA服务器发送请求双系统OTA升级策略指令;接收所述OTA服务器返回的双系统OTA升级策略。
可选地,所述OTA服务器400还用于:由所述OTA服务器检测第一控制器的多个升级策略,以及,第二控制器的多个升级策略;判断所述第一控制器的多个升级策略与所述第二控制器的多个升级策略是否具有兼容性;如果存在所述第一控制器的升级策略与第二控制器的升级策略具有兼容性,则根据具有兼容性的第一控制器的升级策略和第二控制器的升级策略,生成双系统OTA升级策略;将所述双系统OTA升级策略发送至第二控制器。
可选地,所述第二控制器310还用于:解析所述双系统OTA升级策略,确定升级数据下载地址;根据所述升级数据下载地址,下载双系统OTA升级数据。
可选地,所述第二控制器还用于:根据所述第二控制器解析的双系统OTA升级数据和OTA服务器返回的双系统OTA升级策略,判断所述双系统OTA升级数据和双系统OTA升级策略是否一致;如果所述双系统OTA升级数据和双系统OTA升级策略一致,确定双系统OTA升级数据完整;在所述双系统OTA升级数据的完整性校验成功的情况下,将所述双系统OTA升级数据解压为第一升级数据和第二升级数据;将所述第一升级数据发送至第一控制器,以及,将所述第二升级数据发送至第二控制器。
可选地,所述第二控制器310还用于:由所述第二控制器对第二升级数据的有效性进行校验;在所述第二升级数据的有效性校验成功的情况下,由所述第一控制器对第一升级数据的有效性进行校验;在所述第一升级数据的有效性校验成功的情况下,确定第一升级数据为第一控制器的升级策略,第二升级数据为第二控制器的升级策略。
可选地,所述第二控制器310还用于:发送签名标识获取指令至OTA服务器;接收所述OTA服务器根据签名标识获取指令返回的第二控制器的升级策略的签名标识;获取所述第二升级数据的签名标识;判断所述第二升级数据的签名标识与所述第二控制器的升级策略的签名标识是否一致;如果所述第二升级数据的签名标识与所述第二控制器的升级策略的签名标识一致,确定第二升级数据有效。
可选地,所述第二控制器310还用于:生成升级标志写入指令,由所述第二控制器根据所述升级标志写入指令写入升级标志;判断所述第二控制器中的升级标志是否写入成功;在所述第二控制器写入升级标志成功的情况下,将所述升级标志写入指令发送至第一控制器,以由所述第一控制器根据升级标志写入指令在第一控制器中写入升级标志。
可选地,所述第二控制器310还用于:检测所述第一控制器的升级状态和第二控制器的升级状态;在所述第二控制器的升级状态为成功状态时,接收所述第一控制器返回的升级结果,以同步第一控制器和第二控制器的升级结果。
具体实现中,本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的基于双系统的OTA升级方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-onlymemory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于基于双系统的OTA升级系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
基于本申请中示出的示例性实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。此外,虽然本申请中公开内容按照示范性一个或几个实例来介绍,但应理解,可以就这些公开内容的各个方面也可以单独构成一个完整技术方案。
应当理解,本申请中说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,例如能够根据本申请实施例图示或描述中给出那些以外的顺序实施。
此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的那些组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (18)
1.一种基于双系统的OTA升级方法,其特征在于,用于具有第一控制器和第二控制器的显示设备,所述第二控制器用于与OTA服务器进行通信,所述方法应用于第二控制器,所述方法包括以下步骤:
获取OTA服务器发送的双系统OTA升级策略;
解析所述双系统OTA升级策略,得到双系统OTA升级数据;所述双系统OTA升级数据包括用于升级第一控制器的第一升级数据和用于升级第二控制器的第二升级数据;
校验所述双系统OTA升级数据的完整性,以在所述双系统OTA升级数据的完整性校验成功的情况下,存储所述双系统OTA升级数据中的第二升级数据,以及,将所述双系统OTA升级数据中的第一升级数据发送至第一控制器;
生成升级标志写入指令,执行所述升级标志写入指令,以及,将所述升级标志写入指令发送至所述第一控制器,所述升级标志写入指令用于使所述第一控制器和第二控制器中分别写入升级标志;
根据所述第一控制器的升级标志和第二控制器的升级标志,控制第一控制器和第二控制器重启,使所述第一控制器根据第一升级数据进行升级,第二控制器根据第二升级数据进行升级。
2.根据权利要求1所述的方法,其特征在于,所述获取OTA服务器发送的双系统OTA升级策略,包括:
获取存储有第二本地版本的第二控制器信息;
发送信息获取指令至第一控制器;
接收所述第一控制器根据所述信息获取指令返回的存储有第一本地版本的第一控制器信息;
根据所述存储有第二本地版本的第二控制器信息和存储有第一本地版本的第一控制器信息生成双系统OTA升级请求信息;
根据所述双系统OTA升级请求信息,向OTA服务器发送请求双系统OTA升级策略指令;
接收所述OTA服务器返回的双系统OTA升级策略。
3.根据权利要求2所述的方法,其特征在于,所述接收OTA服务器返回的双系统OTA升级策略,包括:
由所述OTA服务器检测第一控制器的多个升级策略,以及,第二控制器的多个升级策略;
判断所述第一控制器的多个升级策略与所述第二控制器的多个升级策略是否具有兼容性;
如果存在所述第一控制器的升级策略与第二控制器的升级策略具有兼容性,则根据具有兼容性的第一控制器的升级策略和第二控制器的升级策略,生成双系统OTA升级策略;
将所述双系统OTA升级策略发送至第二控制器。
4.根据权利要求1所述的方法,其特征在于,所述解析双系统OTA升级策略,得到双系统OTA升级数据,包括:
解析所述双系统OTA升级策略,确定升级数据下载地址;
根据所述升级数据下载地址,下载双系统OTA升级数据。
5.根据权利要求1所述的方法,其特征在于,所述校验双系统OTA升级数据的完整性,以在所述双系统OTA升级数据的完整性校验成功的情况下,将所述双系统OTA升级数据中的第一升级数据发送至第一控制器,以及,将所述双系统OTA升级数据中的第二升级数据发送至第二控制器,包括:
根据所述第二控制器解析的双系统OTA升级数据和OTA服务器返回的双系统OTA升级策略,判断所述双系统OTA升级数据和双系统OTA升级策略是否一致;
如果所述双系统OTA升级数据和双系统OTA升级策略一致,确定双系统OTA升级数据完整;
在所述双系统OTA升级数据的完整性校验成功的情况下,将所述双系统OTA升级数据解压为第一升级数据和第二升级数据;
将所述第一升级数据发送至第一控制器,以及,将所述第二升级数据发送至第二控制器。
6.根据权利要求1所述的方法,其特征在于,还包括:
由所述第二控制器对第二升级数据的有效性进行校验;
在所述第二升级数据的有效性校验成功的情况下,由所述第一控制器对第一升级数据的有效性进行校验;
在所述第一升级数据的有效性校验成功的情况下,确定第一升级数据为第一控制器的升级策略,第二升级数据为第二控制器的升级策略。
7.根据权利要求6所述的方法,其特征在于,所述由第二控制器对第二升级数据的有效性进行校验,包括:
发送签名标识获取指令至OTA服务器;
接收所述OTA服务器根据签名标识获取指令返回的第二控制器的升级策略的签名标识;
获取所述第二升级数据的签名标识;
判断所述第二升级数据的签名标识与所述第二控制器的升级策略的签名标识是否一致;
如果所述第二升级数据的签名标识与所述第二控制器的升级策略的签名标识一致,确定第二升级数据有效。
8.根据权利要求1所述的方法,其特征在于,所述生成升级标志写入指令,执行所述升级标志写入指令,以及,将所述升级标志写入指令发送至所述第一控制器,所述升级标志写入指令用于使第一控制器和第二控制器中分别写入升级标志,包括:
生成升级标志写入指令,由所述第二控制器根据所述升级标志写入指令写入升级标志;
判断所述第二控制器中的升级标志是否写入成功;
在所述第二控制器写入升级标志成功的情况下,将所述升级标志写入指令发送至第一控制器,以由所述第一控制器根据升级标志写入指令在第一控制器中写入升级标志。
9.根据权利要求1所述的方法,其特征在于,还包括:
检测所述第一控制器的升级状态和第二控制器的升级状态;
在所述第二控制器的升级状态为成功状态时,接收所述第一控制器返回的升级结果,以同步第一控制器和第二控制器的升级结果。
10.一种基于双系统的OTA升级系统,其特征在于,包括:具有第一控制器和第二控制器的显示设备,以及,OTA服务器,所述第二控制器通过互联网与所述OTA服务器通信,所述第二控制器通过串口或网线与第一控制器连接;所述OTA服务器用于根据第二控制器发送的请求双系统OTA升级策略指令,发送双系统OTA升级策略至第二控制器;所述第一控制器用于根据第二控制器的指令执行相应操作;
所述第二控制器用于获取OTA服务器发送的双系统OTA升级策略;
解析所述双系统OTA升级策略,得到双系统OTA升级数据;所述双系统OTA升级数据包括用于升级第一控制器的第一升级数据和用于升级第二控制器的第二升级数据;
校验所述双系统OTA升级数据的完整性,以在所述双系统OTA升级数据的完整性校验成功的情况下,存储所述双系统OTA升级数据中的第二升级数据,以及,将所述双系统OTA升级数据中的第一升级数据发送至第一控制器;
生成升级标志写入指令,执行所述升级标志写入指令,以及,将所述升级标志写入指令发送至所述第一控制器,所述升级标志写入指令用于使所述第一控制器和第二控制器中分别写入升级标志;
根据所述第一控制器的升级标志和第二控制器的升级标志,控制第一控制器和第二控制器重启,使所述第一控制器根据第一升级数据进行升级,第二控制器根据第二升级数据进行升级。
11.根据权利要求10所述的系统,其特征在于,所述第二控制器还用于:
获取存储有第二本地版本的第二控制器信息;
发送信息获取指令至第一控制器;
接收所述第一控制器根据所述信息获取指令返回的存储有第一本地版本的第一控制器信息;
根据所述存储有第二本地版本的第二控制器信息和存储有第一本地版本的第一控制器信息生成双系统OTA升级请求信息;
根据所述双系统OTA升级请求信息,向OTA服务器发送请求双系统OTA升级策略指令;
接收所述OTA服务器返回的双系统OTA升级策略。
12.根据权利要求11所述的系统,其特征在于,所述OTA服务器还用于:
由所述OTA服务器检测第一控制器的多个升级策略,以及,第二控制器的多个升级策略;
判断所述第一控制器的多个升级策略与所述第二控制器的多个升级策略是否具有兼容性;
如果存在所述第一控制器的升级策略与第二控制器的升级策略具有兼容性,则根据具有兼容性的第一控制器的升级策略和第二控制器的升级策略,生成双系统OTA升级策略;
将所述双系统OTA升级策略发送至第二控制器。
13.根据权利要求10所述的系统,其特征在于,所述第二控制器还用于:
解析所述双系统OTA升级策略,确定升级数据下载地址;
根据所述升级数据下载地址,下载双系统OTA升级数据。
14.根据权利要求10所述的系统,其特征在于,所述第二控制器还用于:
根据所述第二控制器解析的双系统OTA升级数据和OTA服务器返回的双系统OTA升级策略,判断所述双系统OTA升级数据和双系统OTA升级策略是否一致;
如果所述双系统OTA升级数据和双系统OTA升级策略一致,确定双系统OTA升级数据完整;
在所述双系统OTA升级数据的完整性校验成功的情况下,将所述双系统OTA升级数据解压为第一升级数据和第二升级数据;
将所述第一升级数据发送至第一控制器,以及,将所述第二升级数据发送至第二控制器。
15.根据权利要求10所述的系统,其特征在于,所述第二控制器还用于:
由所述第二控制器对第二升级数据的有效性进行校验;
在所述第二升级数据的有效性校验成功的情况下,由所述第一控制器对第一升级数据的有效性进行校验;
在所述第一升级数据的有效性校验成功的情况下,确定第一升级数据为第一控制器的升级策略,第二升级数据为第二控制器的升级策略。
16.根据权利要求15所述的系统,其特征在于,所述第二控制器还用于:
发送签名标识获取指令至OTA服务器;
接收所述OTA服务器根据签名标识获取指令返回的第二控制器的升级策略的签名标识;
获取所述第二升级数据的签名标识;
判断所述第二升级数据的签名标识与所述第二控制器的升级策略的签名标识是否一致;
如果所述第二升级数据的签名标识与所述第二控制器的升级策略的签名标识一致,确定第二升级数据有效。
17.根据权利要求10所述的系统,其特征在于,所述第二控制器还用于:
生成升级标志写入指令,由所述第二控制器根据所述升级标志写入指令写入升级标志;
判断所述第二控制器中的升级标志是否写入成功;
在所述第二控制器写入升级标志成功的情况下,将所述升级标志写入指令发送至第一控制器,以由所述第一控制器根据升级标志写入指令在第一控制器中写入升级标志。
18.根据权利要求10所述的系统,其特征在于,所述第二控制器还用于:
检测所述第一控制器的升级状态和第二控制器的升级状态;
在所述第二控制器的升级状态为成功状态时,接收所述第一控制器返回的升级结果,以同步第一控制器和第二控制器的升级结果。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2019104987180 | 2019-06-10 | ||
CN201910498718 | 2019-06-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112068857A true CN112068857A (zh) | 2020-12-11 |
Family
ID=73658701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010240101.1A Pending CN112068857A (zh) | 2019-06-10 | 2020-03-31 | 一种基于双系统的ota升级方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112068857A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105700918A (zh) * | 2016-01-05 | 2016-06-22 | 青岛海信移动通信技术股份有限公司 | 一种系统升级方法及装置 |
CN105786549A (zh) * | 2014-12-26 | 2016-07-20 | 乐视致新电子科技(天津)有限公司 | 智能设备及其升级方法 |
CN105786542A (zh) * | 2014-12-26 | 2016-07-20 | 乐视致新电子科技(天津)有限公司 | 智能设备及其系统升级方法 |
CN106250192A (zh) * | 2016-08-04 | 2016-12-21 | 芯讯通无线科技(上海)有限公司 | 上位机的软件升级方法及系统 |
WO2018006677A1 (zh) * | 2016-07-06 | 2018-01-11 | 中兴通讯股份有限公司 | 智能升级方法、服务器、终端和系统 |
CN109460247A (zh) * | 2018-12-17 | 2019-03-12 | 深圳创维数字技术有限公司 | 软件包升级方法、软件客户端、存储介质及装置 |
-
2020
- 2020-03-31 CN CN202010240101.1A patent/CN112068857A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105786549A (zh) * | 2014-12-26 | 2016-07-20 | 乐视致新电子科技(天津)有限公司 | 智能设备及其升级方法 |
CN105786542A (zh) * | 2014-12-26 | 2016-07-20 | 乐视致新电子科技(天津)有限公司 | 智能设备及其系统升级方法 |
CN105700918A (zh) * | 2016-01-05 | 2016-06-22 | 青岛海信移动通信技术股份有限公司 | 一种系统升级方法及装置 |
WO2018006677A1 (zh) * | 2016-07-06 | 2018-01-11 | 中兴通讯股份有限公司 | 智能升级方法、服务器、终端和系统 |
CN106250192A (zh) * | 2016-08-04 | 2016-12-21 | 芯讯通无线科技(上海)有限公司 | 上位机的软件升级方法及系统 |
CN109460247A (zh) * | 2018-12-17 | 2019-03-12 | 深圳创维数字技术有限公司 | 软件包升级方法、软件客户端、存储介质及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112073446B (zh) | 一种双系统ota并行升级方法及系统 | |
CN112399212A (zh) | 显示设备、分享文件的方法和服务器 | |
CN112073778A (zh) | 显示设备及按键传递的容错方法 | |
CN112068987A (zh) | 一种快速进行恢复出厂设置的方法及装置 | |
CN112528051B (zh) | 一种演唱作品的发布方法、显示设备及服务器 | |
CN112068855B (zh) | 一种双系统下应用的升级方法及系统 | |
CN112073790B (zh) | 显示设备及双系统间启动状态的同步方法 | |
CN112068966A (zh) | 一种双系统进入恢复模式的方法及显示设备 | |
CN112423042A (zh) | 一种双系统蓝牙遥控器的升级方法及系统 | |
CN110784766A (zh) | 一键升级显示设备的方法及显示设备 | |
CN112073813B (zh) | 显示设备及双系统间异常启动的检测与处理方法 | |
CN112073812B (zh) | 一种智能电视上的应用管理方法及显示设备 | |
CN112073777B (zh) | 一种语音交互方法及显示设备 | |
CN112073776B (zh) | 语音控制方法及显示设备 | |
CN112802440B (zh) | 一种显示设备及声音低延迟处理方法 | |
CN112073356B (zh) | 一种数据传输方法及显示设备 | |
CN112346754A (zh) | 一种双系统应用升级界面显示的控制方法及装置 | |
CN112073816A (zh) | 双系统usb升级方法、装置及显示设备 | |
CN112068857A (zh) | 一种基于双系统的ota升级方法及系统 | |
CN112071338A (zh) | 一种录音控制方法、装置和显示设备 | |
CN112073773A (zh) | 一种屏幕互动方法、装置及显示设备 | |
CN112073779B (zh) | 显示设备及按键传递的容错方法 | |
CN112449245B (zh) | 双系统显示设备应用升级进度显示方法及显示设备 | |
CN112073811B (zh) | 一种文件传输调度方法及显示设备 | |
CN112071337B (zh) | 一种录音控制方法、装置、服务器和显示设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |