CN112068855A - 一种双系统下应用的升级方法及系统 - Google Patents

一种双系统下应用的升级方法及系统 Download PDF

Info

Publication number
CN112068855A
CN112068855A CN201910891465.3A CN201910891465A CN112068855A CN 112068855 A CN112068855 A CN 112068855A CN 201910891465 A CN201910891465 A CN 201910891465A CN 112068855 A CN112068855 A CN 112068855A
Authority
CN
China
Prior art keywords
application
upgrading
version number
hardware system
upgraded
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.)
Granted
Application number
CN201910891465.3A
Other languages
English (en)
Other versions
CN112068855B (zh
Inventor
庄广海
苗璐
苑衍梅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hisense Visual Technology Co Ltd
Original Assignee
Hisense Visual Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hisense Visual Technology Co Ltd filed Critical Hisense Visual Technology Co Ltd
Publication of CN112068855A publication Critical patent/CN112068855A/zh
Application granted granted Critical
Publication of CN112068855B publication Critical patent/CN112068855B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请公开了一种双系统下应用的升级方法及系统,包括:根据应用升级指令,下载应用升级包;在应用升级包为双系统升级包时,解压缩得到第一升级文件和第二升级文件;在第一升级文件的通信版本号和第二升级文件的通信版本号一致性时,将第一升级文件发送至第一硬件系统,对第一应用进行升级,将第二升级文件发送至第二硬件系统,对第二应用进行升级。可见,本实施例提供的方法及系统,采用通信版本号的方式确定两个应用之间是否可以通信,使得升级后的应用之间具有匹配的通信版本号,进而可以保证升级后的两个相互配合的应用仍然可以正常通信,以保证显示设备中由上述配合使用的应用实现的功能可以正常使用,避免影响用户体验。

Description

一种双系统下应用的升级方法及系统
本申请要求于2019年6月10日提交国家知识产权局申请号为201910498206.4的中国专利申请的优先权。其全部内容通过结合引用结合在本申请中。
技术领域
本申请涉及通信技术领域,尤其涉及一种双系统下应用的升级方法及系统。
背景技术
随着科技的进步,终端设备已经遍布人们生活的方方面面,终端设备上的应用程序也能够解决人们的许多问题,而各个应用程序的开设者也在不断追求进步,开发出更多更优化的功能不断更新应用程序,方便人们的生活,能够放终端设备更加帮助到人们的生活。但随着更加强大的功能的开发,终端设备上的应用程序也需要不断更新,让应用程序能够更新到新的版本,获取当前应用程序新开发的功能。
目前,对于应用的升级通常有如下两种做法:用户确认法:用户先接收到应用升级通知,然后手动确认后再进行升级。定时检测替换法:安装有待升级应用的终端设备定时检测待升级应用的本地代码包版本和服务器中的最新代码包版本是否一致,如果版本不一致,则从服务器中下载最新代码包版本对应的代码包以替换本地代码包。
但是,上述对应用的升级方法仅适用单操作系统的情况,而随着用户对应用体验需求越来越高,使得对操作系统的各项性能指标的要求也随之变高,在终端设备上设置双系统或多系统也成为可能。在双系统或者多系统中,有些应用为了完成特定的功能,需要存在于多个系统中。这些应用需要跨越系统进行交互,相互协调工作,共同完成任务。在交互时,相互配合的应用之间需要相互通信,彼此交换信息、数据和方法调用,使他们之间存在耦合性,给应用升级带来难度。
以双系统为例,一方面,如果他们之间的通信接口发生变化,升级时只升级成功一个,而另一个升级失败,那么由于通信方式的改变导致双系统两端的应用将会有通信失败的情况,此时应用的功能会失效。另一方面,如果通信方式没有发生改变,而更新只发生在一个系统,此时仅需对该系统的应用升级。但是,由于终端设备情况复杂,版本信息也无法控制,应用升级后,不能保证单端升级的应用和对端与之配合的应用正常通信,易出现双系统应用升级后版本不匹配的问题。
发明内容
本申请提供了一种双系统下应用的升级方法及系统,以解决现有的升级方法无法保证升级后的应用之间可以正常通信的问题。
第一方面,本申请提供了一种双系统下应用的升级方法,包括以下步骤:
根据应用升级指令,下载应用升级包;
判断所述应用升级包是否为双系统升级包;所述双系统升级包是指用于升级第一硬件系统中第一应用和第二硬件系统中第二应用的升级包,所述第一应用与第二应用配合工作;
如果所述应用升级包为双系统升级包,解压缩所述双系统升级包得到第一升级文件和第二升级文件;所述第一升级文件用于升级第一硬件系统中的第一应用,所述第二升级文件用于升级第二硬件系统中的第二应用;
获取所述第一升级文件的通信版本号和所述第二升级文件的通信版本号;
在所述第一升级文件的通信版本号和所述第二升级文件的通信版本号一致的情况下,将所述第一升级文件发送至第一硬件系统,由第一升级文件对第一应用进行升级,以及,将所述第二升级文件发送至第二硬件系统,由第二升级文件对第二应用进行升级。
可选地,还包括:
如果所述第一升级文件的通信版本号和所述第二升级文件的通信版本号不一致,删除下载的应用升级包,结束应用升级过程。
可选地,还包括:
监测所述第一硬件系统中第一升级文件的安装状态和所述第二硬件系统中第二升级文件的安装状态;
如果所述第一升级文件的安装状态为成功状态,以及,第二升级文件的安装状态为成功状态,获取升级后的第一应用的通信版本号和升级后的第二应用的通信版本号;
在所述升级后的第一应用的通信版本号和升级后的第二应用的通信版本号一致的情况下,所述第一应用和第二应用完成升级。
可选地,还包括:
如果所述升级后的第一应用的通信版本号和升级后的第二应用的通信版本号不一致,将升级后的第一应用的版本进行回退,以及,将升级后的第二应用的版本进行回退。
可选地,还包括:
监测所述第一硬件系统中第一升级文件的安装状态和所述第二硬件系统中第二升级文件的安装状态;
如果所述第一升级文件的安装状态为成功状态,以及,第二升级文件的安装状态为失败状态,获取升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号;
在所述升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号一致的情况下,所述第一应用完成升级。
可选地,还包括:
如果所述升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号不一致,将升级成功的第一应用的版本进行回退。
可选地,还包括:
如果所述应用升级包不是双系统升级包,解析所述应用升级包,得到应用升级文件;
根据所述应用升级文件,确定对端硬件系统和需要进行应用升级的目标硬件系统;所述对端硬件系统是指与目标硬件系统进行通信的系统;
获取所述应用升级文件的通信版本号和所述对端硬件系统中对端应用的通信版本号;
在所述应用升级文件的通信版本号和对端应用的通信版本号一致的情况下,将应用升级文件发送至目标硬件系统,由所述目标硬件系统安装所述应用升级文件,实现目标硬件系统中的目标应用的升级。
可选地,还包括:
如果所述应用升级文件的通信版本号和对端硬件系统中对端应用的通信版本号不一致,删除下载的应用升级包,结束应用升级过程。
第二方面,一种双系统下应用的升级系统,包括:第一硬件系统和第二硬件系统,所述第一硬件系统通过有线方式与第二硬件系统连接,所述第二硬件系统用于根据第一硬件系统的指令执行相应的操作;
所述第一硬件系统用于根据应用升级指令,下载应用升级包;
判断所述应用升级包是否为双系统升级包;所述双系统升级包是指用于升级第一硬件系统中第一应用和第二硬件系统中第二应用的升级包,所述第一应用与第二应用配合工作;
如果所述应用升级包为双系统升级包,解压缩所述双系统升级包得到第一升级文件和第二升级文件;所述第一升级文件用于升级第一硬件系统中的第一应用,所述第二升级文件用于升级第二硬件系统中的第二应用;
获取所述第一升级文件的通信版本号和所述第二升级文件的通信版本号;
在所述第一升级文件的通信版本号和所述第二升级文件的通信版本号一致的情况下,将所述第一升级文件发送至第一硬件系统,由第一升级文件对第一应用进行升级,以及,将所述第二升级文件发送至第二硬件系统,由第二升级文件对第二应用进行升级。
可选地,所述第一硬件系统还用于:
如果所述第一升级文件的通信版本号和所述第二升级文件的通信版本号不一致,删除下载的应用升级包,结束应用升级过程。
可选地,所述第一硬件系统还用于:
监测所述第一硬件系统中第一升级文件的安装状态和所述第二硬件系统中第二升级文件的安装状态;
如果所述第一升级文件的安装状态为成功状态,以及,第二升级文件的安装状态为成功状态,获取升级后的第一应用的通信版本号和升级后的第二应用的通信版本号;
在所述升级后的第一应用的通信版本号和升级后的第二应用的通信版本号一致的情况下,所述第一应用和第二应用完成升级。
可选地,所述第一硬件系统还用于:
如果所述升级后的第一应用的通信版本号和升级后的第二应用的通信版本号不一致,将升级后的第一应用的版本进行回退,以及,将升级后的第二应用的版本进行回退。
可选地,所述第一硬件系统还用于:
监测所述第一硬件系统中第一升级文件的安装状态和所述第二硬件系统中第二升级文件的安装状态;
如果所述第一升级文件的安装状态为成功状态,以及,第二升级文件的安装状态为失败状态,获取升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号;
在所述升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号一致的情况下,所述第一应用完成升级。
可选地,所述第一硬件系统还用于:
如果所述升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号不一致,将升级成功的第一应用的版本进行回退。
可选地,所述第一硬件系统还用于:
如果所述应用升级包不是双系统升级包,解析所述应用升级包,得到应用升级文件;
根据所述应用升级文件,确定对端硬件系统和需要进行应用升级的目标硬件系统;所述对端硬件系统是指与目标硬件系统进行通信的系统;
获取所述应用升级文件的通信版本号和所述对端硬件系统中对端应用的通信版本号;
在所述应用升级文件的通信版本号和对端应用的通信版本号一致的情况下,将应用升级文件发送至目标硬件系统,由所述目标硬件系统安装所述应用升级文件,实现目标硬件系统中的目标应用的升级。
可选地,所述第一硬件系统还用于:
如果所述应用升级文件的通信版本号和对端硬件系统中对端应用的通信版本号不一致,删除下载的应用升级包,结束应用升级过程。
由以上技术方案可知,本发明实施例提供的一种双系统下应用的升级方法及系统,包括:根据应用升级指令,下载应用升级包;在应用升级包为双系统升级包时,解压缩双系统升级包得到第一升级文件和第二升级文件;判断第一升级文件的通信版本号和第二升级文件的通信版本号的一致性,如果一致时,则将第一升级文件发送至第一硬件系统,由第一升级文件对第一应用进行升级,以及,将第二升级文件发送至第二硬件系统,由第二升级文件对第二应用进行升级。可见,本实施例提供的方法及系统,采用通信版本号的方式确定两个应用之间是否可以通信,使得升级后的应用之间具有匹配的通信版本号,进而可以保证升级后的两个相互配合的应用仍然可以正常通信,以保证显示设备中由上述配合使用的应用实现的功能可以正常使用,避免影响用户体验。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1中示例性示出了根据实施例中显示设备与控制装置之间操作场景的示意图;
图2中示例性示出了根据实施例中控制装置的硬件配置框图;
图3中示例性示出了根据实施例中显示设备中硬件系统的硬件配置框图;
图4中示例性示出了根据图3显示设备的硬件架构框图;
图5中示例性示出了根据实施例中显示设备的功能配置示意图;
图6a中示例性示出了根据实施例中显示设备中软件系统的配置示意图;
图6b中示例性示出了根据实施例中显示设备中应用程序的配置示意图;
图7中示例性示出了根据实施例中显示设备中用户界面的示意图;
图8中示例性示出了根据实施例中双系统下应用的升级方法的流程图;
图9中示例性示出了根据实施例中双系统下应用的升级方法的数据流图;
图10中示例性示出了根据又一实施例中双系统下应用的升级方法的流程图;
图11中示例性示出了根据另一实施例中双系统下应用的升级方法的流程图;
图12中示例性示出了根据再一实施例中双系统下应用的升级方法的流程图;
图13中示例性示出了根据实施例中双系统下应用的升级系统的结构框图。
具体实施方式
为使本申请示例性实施例的目的、技术方案和优点更加清楚,下面将结合本申请示例性实施例中的附图,对本申请示例性实施例中的技术方案进行清楚、完整地描述,显然,所描述的示例性实施例仅是本申请一部分实施例,而不是全部的实施例。
为便于用户使用,显示设备上通常会设置各种外部装置接口,以便于连接不同的外设设备或线缆以实现相应的功能。而在显示设备的接口上连接有高清晰度的摄像头时,如果显示设备的硬件系统没有接收源码的高像素摄像头的硬件接口,那么就会导致无法将摄像头接收到的数据呈现到显示设备的显示屏上。
并且,受制于硬件结构,传统显示设备的硬件系统仅支持一路硬解码资源,且通常最大仅能支持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)为用户提供各种控制。
示例的,移动终端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所示,显示设备上可以连接或设置有摄像头,用于将摄像头拍摄到的画面呈现在本显示设备或其他显示设备的显示界面上,以实现用户之间的交互聊天。具体的,摄像头拍摄到的画面可在显示设备上全屏显示、半屏显示、或者显示任意可选区域。
作为一种可选的连接方式,摄像头通过连接板与显示器后壳连接,固定安装在显示器后壳的上侧中部,作为可安装的方式,可以固定安装在显示器后壳的任意位置,能保证其图像采集区域不被后壳遮挡即可,例如,图像采集区域与显示设备的显示朝向相同。
作为另一种可选的连接方式,摄像头通过连接板或者其他可想到的连接器可升降的与显示后壳连接,连接器上安装有升降马达,当用户要使用摄像头或者有应用程序要使用摄像头时,再升出显示器之上,当不需要使用摄像头时,其可内嵌到后壳之后,以达到保护摄像头免受损坏。
作为一种实施例,本申请所采用的摄像头可以为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所示。为便于表述以下将双硬件系统架构中的一个硬件系统称为第一硬件系统或A系统、A芯片,并将另一个硬件系统称为第二硬件系统或N系统、N芯片。A芯片包含A芯片的控制器及通过各类接口与A芯片的控制器相连的各类模块,N芯片则包含N芯片的控制器及通过各类接口与N芯片的控制器相连的各类模块。A芯片及N芯片中可以各自安装有独立的操作系统,从而使显示设备200中存在两个在独立但又存在相互关联的子系统。
如图3所示,A芯片与N芯片之间可以通过多个不同类型的接口实现连接、通信及供电。A芯片与N芯片之间接口的接口类型可以包括通用输入输出接口(General-purposeinput/output,GPIO)、USB接口、HDMI接口、UART接口等。A芯片与N芯片之间可以使用这些接口中的一个或多个进行通信或电力传输。例如图3所示,在双硬件系统架构下,可以由外接的电源(power)为N芯片供电,而A芯片则可以不由外接电源,而由N芯片供电。
除用于与N芯片进行连接的接口之外,A芯片还可以包含用于连接其他设备或组件的接口,例如图3中所示的用于连接摄像头(Camera)的MIPI接口,蓝牙接口等。
类似的,除用于与N芯片进行连接的接口之外,N芯片还可以包含用于连接显示屏TCON(Timer Control Register)的VBY接口,用于连接功率放大器(Amplifier,AMP)及扬声器(Speaker)的i2S接口;以及IR/Key接口,USB接口,Wifi接口,蓝牙接口,HDMI接口,Tuner接口等。
下面结合图4对本申请双硬件系统架构进行进一步的说明。需要说明的是图4仅仅是对本申请双硬件系统架构的一个示例性说明,并不表示对本申请的限定。在实际应用中,两个硬件系统均可根据需要包含更多或更少的硬件或接口。
图4中示例性示出了根据图3显示设备200的硬件架构框图。如图4所示,显示设备200的硬件系统可以包括A芯片和N芯片,以及通过各类接口与A芯片或N芯片相连接的模块。
N芯片可以包括调谐解调器220、通信器230、外部装置接口250、控制器210、存储器290、用户输入接口、视频处理器260-1、音频处理器260-2、显示器280、音频输出接口272、供电电源。在其他实施例中N芯片也可以包括更多或更少的模块。
其中,调谐解调器220,用于对通过有线或无线方式接收广播电视信号,进行放大、混频和谐振等调制解调处理,从而从多个无线或有线广播电视信号中解调出用户所选择电视频道的频率中所携带的音视频信号,以及附加信息(例如EPG数据信号)。根据电视信号广播制式不同,调谐解调器220的信号途径可以有很多种,诸如:地面广播、有线广播、卫星广播或互联网广播等;以及根据调制类型不同,所述信号的调整方式可以数字调制方式,也可以模拟调制方式;以及根据接收电视信号种类不同,调谐解调器220可以解调模拟信号和/或数字信号。
调谐解调器220,还用于根据用户选择,以及由控制器210控制,响应用户选择的电视频道频率以及该频率所携带的电视信号。
在其他一些示例性实施例中,调谐解调器220也可在外置设备中,如外置机顶盒等。这样,机顶盒通过调制解调后输出电视音视频信号,经过外置装置接口250输入至显示设备200中。
通信器230是用于根据各种通信协议类型与外部设备或外部服务器进行通信的组件。例如:通信器230可以包括WIFI模块231,蓝牙通信协议模块232,有线以太网通信协议模块233,及红外通信协议模块等其他网络通信协议模块或近场通信协议模块。
显示设备200可以通过通信器230与外部控制设备或内容提供设备之间建立控制信号和数据信号的连接。例如,通信器可根据控制器的控制接收遥控器100的控制信号。
外部装置接口250,是提供N芯片控制器210和A芯片及外部其他设备间数据传输的组件。外部装置接口可按照有线/无线方式与诸如机顶盒、游戏装置、笔记本电脑等的外部设备连接,可接收外部设备的诸如视频信号(例如运动图像)、音频信号(例如音乐)、附加信息(例如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中提供外接电源的电源接口。
与N芯片相类似,如图4所示,A芯片可以包括控制器310、通信器330、检测器340、存储器390。在某些实施例中还可以包括用户输入接口、视频处理器、音频处理器、显示器、音频输出接口。在某些实施例中,也可以存在独立为A芯片供电的供电电源。
通信器330是用于根据各种通信协议类型与外部设备或外部服务器进行通信的组件。例如:通信器330可以包括WIFI模块331,蓝牙通信协议模块332,有线以太网通信协议模块333,及红外通信协议模块等其他网络通信协议模块或近场通信协议模块。
A芯片的通信器330和N芯片的通信器230也有相互交互。例如,N芯片的WiFi模块231用于连接外部网络,与外部服务器等产生网络通信。A芯片的WiFi模块331用于连接至N芯片的WiFi模块231,而不与外界网络等产生直接连接。因此,对于用户而言,一个如上述实施例中的显示设备至对外显示一个WiFi账号。
检测器340,是显示设备A芯片用于采集外部环境或与外部交互的信号的组件。检测器340可以包括光接收器342,用于采集环境光线强度的传感器,可以通过采集环境光来自适应显示参数变化等;还可以包括图像采集器341,如相机、摄像头等,可以用于采集外部环境场景,以及用于采集用户的属性或与用户交互手势,可以自适应变化显示参数,也可以识别用户手势,以实现与用户之间互动的功能。
外部装置接口350,提供控制器310与N芯片或外部其他设备间数据传输的组件。外部装置接口可按照有线/无线方式与诸如机顶盒、游戏装置、笔记本电脑等的外部设备连接。
控制器310,通过运行存储在存储器390上的各种软件控制程序(如用安装的第三方应用等),以及与N芯片的交互,来控制显示设备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中操作系统和应用程序指令,和与N芯片进行通信、信号、数据、指令等传输与交互,以及根据接收外部输入的各种交互指令,来执行各种应用程序、数据和内容,以便最终显示和播放各种音视频内容。
通信接口,可包括第一接口318-1到第n接口318-n。这些接口可以是经由网络被连接到外部设备的网络接口,也可以是经由网络被连接到N芯片的网络接口。
控制器310可以控制显示设备200的整体操作。例如:响应于接收到用于选择在显示器280上显示UI对象的用户命令,控制器210便可以执行与由用户命令选择的对象有关的操作。
图形处理器316,用于产生各种图形对象,如:图标、操作菜单、以及用户输入指令显示图形等。包括运算器,通过接收用户输入各种交互指令进行运算,根据显示属性显示各种对象。以及包括渲染器,产生基于运算器得到的各种对象,进行渲染的结果显示在显示器280上。
A芯片的图形处理器316与N芯片的图形处理器216均能产生各种图形对象。区别性的,若应用1安装于A芯片,应用2安装在N芯片,当用户在应用1的界面,且在应用1内进行用户输入的指令时,由A芯片图形处理器316产生图形对象。当用户在应用2的界面,且在应用2内进行用户输入的指令时,由N芯片的图形处理器216产生图形对象。
图5中示例性示出了根据实施例中显示设备的功能配置示意图。
如图5所示,A芯片的存储器390和N芯片的存储器290分别用于存储操作系统、应用程序、内容和用户数据等,在A芯片的控制器310和N芯片的控制器210的控制下执行驱动显示设备200的系统运行以及响应用户的各种操作。A芯片的存储器390和N芯片的存储器290可以包括易失性和/或非易失性存储器。
对于N芯片,存储器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、光接收模块2909、电力控制模块2910、操作系统2911、以及其他应用程序2912、浏览器模块等等。控制器210通过运行存储器290中各种软件程序,来执行诸如:广播电视信号接收解调功能、电视频道选择控制功能、音量选择控制功能、图像控制功能、显示控制功能、音频控制功能、外部指令识别功能、通信控制功能、光信号接收功能、电力控制功能、支持各种功能的软件操控平台、以及浏览器功能等各类功能。
存储器390,包括存储用于驱动和控制显示设备200的各种软件模块。如:存储器390中存储的各种软件模块,包括:基础模块、检测模块、通信模块、显示控制模块、浏览器模块、和各种服务模块等。由于存储器390与存储器290的功能比较相似,相关之处参见存储器290即可,在此就不再赘述。
示例的,存储器390,包括图像控制模块3904、音频控制模块2906、外部指令识别模块3907、通信控制模块3908、光接收模块3909、操作系统3911、以及其他应用程序3912、浏览器模块等等。控制器210通过运行存储器290中各种软件程序,来执行诸如:图像控制功能、显示控制功能、音频控制功能、外部指令识别功能、通信控制功能、光信号接收功能、电力控制功能、支持各种功能的软件操控平台、以及浏览器功能等各类功能。
区别性的,N芯片的外部指令识别模块2907和A芯片的外部指令识别模块3907可识别不同的指令。
示例性的,由于摄像头等图像接收设备与A芯片连接,因此,A芯片的外部指令识别模块3907可包括图形识别模块2907-1,图形识别模块3907-1内存储有图形数据库,摄像头接收到外界的图形指令时,与图形数据库中的指令进行对应关系,以对显示设备作出指令控制。而由于语音接收设备以及遥控器与N芯片连接,因此,N芯片的外部指令识别模块2907可包括语音识别模块2907-2,图形识别模块2907-2内存储有语音数据库,语音接收设备等接收到外界的语音指令或时,与语音数据库中的指令进行对应关系,以对显示设备作出指令控制。同样的,遥控器等控制装置100与N芯片连接,由按键指令识别模块与控制装置100进行指令交互。
图6a中示例性示出了根据实施例中显示设备200中软件系统的配置框图。
对N芯片,如图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监听到各用户输入事件或子事件,用于更新用户界面的布局,包括但不限于界面中各控件或子控件的位置,以及容器的大小或位置、层级等与界面布局相关各种执行操作。
由于A芯片的操作系统3911与N芯片的操作系统2911的功能比较相似,相关之处参见操作系统2911即可,在此就不再赘述。
图6b中示例性示出了根据实施例中显示设备中应用程序的配置示意图;如图6b中所示,显示设备的应用程序层包含可在显示设备200执行的各种应用程序。
N芯片的应用程序层2912可包含但不限于一个或多个应用程序,如:视频点播应用程序、应用程序中心、游戏应用等。A芯片的应用程序层3912可包含但不限于一个或多个应用程序,如:直播电视应用程序、媒体中心应用程序等。需要说明的是,A芯片和N芯片上分别包含什么应用程序是根据操作系统和其他设计确定的,本发明无需对A芯片和N芯片上所包含的应用程序做具体的限定和划分。
直播电视应用程序,可以通过不同的信号源提供直播电视。例如,直播电视应用程可以使用来自有线电视、无线广播、卫星服务或其他类型的直播电视服务的输入提供电视信号。以及,直播电视应用程序可在显示设备200上显示直播电视信号的视频。
视频点播应用程序,可以提供来自不同存储源的视频。不同于直播电视应用程序,视频点播提供来自某些存储源的视频显示。例如,视频点播可以来自云存储的服务器端、来自包含已存视频节目的本地硬盘储存器。
媒体中心应用程序,可以提供各种多媒体内容播放的应用程序。例如,媒体中心,可以为不同于直播电视或视频点播,用户可通过媒体中心应用程序访问各种图像或音频所提供服务。
应用程序中心,可以提供储存各种应用程序。应用程序可以是一种游戏、应用程序,或某些和计算机系统或其他设备相关但可以在显示设备中运行的其他应用程序。应用程序中心可从不同来源获得这些应用程序,将它们储存在本地储存器中,然后在显示设备200上可运行。
图7中示例性示出了根据实施例中显示设备200中用户界面的示意图。如图7所示,用户界面包括多个视图显示区,示例的,第一视图显示区201和播放画面202,其中,播放画面包括布局一个或多个不同项目。以及用户界面中还包括指示项目被选择的选择器,可通过用户输入而移动选择器的位置,以改变选择不同的项目。
需要说明的是,多个视图显示区可以呈现不同层级的显示画面。如,第一视图显示区可呈现视频聊天项目内容,第二视图显示区可呈现应用层项目内容(如,网页视频、VOD展示、应用程序画面等)。
可选的,不同视图显示区的呈现存在优先级区别,优先级不同的视图显示区之间,视图显示区的显示优先级不同。如,系统层的优先级高于应用层的优先级,当用户在应用层使用获取选择器和画面切换时,不遮挡系统层的视图显示区的画面展示;以及,根据用户的选择使应用层的视图显示区的大小和位置发生变化时,系统层的视图显示区的大小和位置不受影响。
也可以呈现相同层级的显示画面,此时,选择器可以在第一视图显示区和第二视图显示区之间做切换,以及当第一视图显示区的大小和位置发生变化时,第二视图显示区的大小和位置可随及发生改变。
由于A芯片及N芯片中可能分别安装有独立的操作系统,从而使显示设备200中存在两个在独立但又存在相互关联的子系统。例如,A芯片和N芯片均可以独立安装有安卓(Android)及各类APP,使得每个芯片均可以实现一定的功能,并且使A芯片和N芯片协同实现某项功能。由于随着用户使用需求的不断变化,显示设备内置的系统及系统中的应用需要不断升级来满足用户的需求。
本发明实施例提供的双系统下应用的升级方法,应用于具有双系统架构的显示设备200。本实施例中的双系统包括第一硬件系统210和第二硬件系统310,第一硬件系统210还可称为A系统、A芯片,为从系统;第二硬件系统310还可称为N系统、N芯片,为主系统。A芯片(第一硬件系统210)包含A芯片的控制器及通过各类接口与A芯片的控制器相连的各类模块,N芯片(第二硬件系统310)则包含N芯片的控制器及通过各类接口与N芯片的控制器相连的各类模块。A芯片(第一硬件系统210)及N芯片(第二硬件系统310)中可以各自安装有独立的操作系统,从而使显示设备200中存在两个独立但又存在相互关联的子系统。
A芯片(第一硬件系统210)与N芯片(第二硬件系统310)之间可以通过多个不同类型的接口实现连接、通信及供电。A芯片与N芯片之间接口的接口类型可以包括通用输入输出接口(General-purpose input/output,GPIO)、USB接口、HDMI接口、UART接口等,A芯片与N芯片之间可以使用这些接口中的一个或多个进行通信或电力传输。
为实现显示设备的不同使用功能,在每个系统中需安装不同的应用,且在不同的系统中安装的应用类型也不同,例如,第二硬件系统上安装系统级的预置应用,第一硬件系统上只存放用户级应用,如用户下载的应用或预置的供用户使用的娱乐性的应用。
而为实现显示设备的一项功能,需要第一硬件系统上的某个应用与第二硬件系统上的某个应用配合。例如,若用户想要使用直播电视功能,那么用于处理图像和音频等应用设置在第二硬件系统上,而用于显示图像、播放声音等应用则设置在第一硬件系统上。可见,第二硬件系统用于为实现显示设备的直播电视功能进行数据处理和发送,而第一硬件系统则根据第二硬件系统发送的数据进行图像显示。因此,在实现直播电视功能时,需要同时使用第一硬件系统上的应用和第二硬件系统上的应用,两个应用需要相互配合。
随着更加强大的功能开发,显示设备上的应用也需要不断升级,以获取当前应用程序新开发的功能。由于相互配合使用的应用之间需要相互通信,彼此交换信息、数据和方法调用,使他们之间存在耦合性,这样会给应用升级带来难度。以双系统为例,如果他们之间的通信接口发生变化,升级时只升级成功一个,而另一个升级失败,那么由于通信方式的改变导致双系统端的应用将会通信失败,此时应用的功能会失效。如果通信方式没有发生改变,而升级只发生在一端,那么仅需升级该端的应用。
在双系统架构中,存在相互配合使用的应用对。例如,存在一个应用APP,其在第一硬件系统端应用名为APP_A,第二硬件系统端应用APP_B,APP_A和APP_B需要相互通信,从而完成指定功能。那么对相互配合的应用来说,在对应用升级的时候,需要保证升级之后,APP_A和APP_B仍然可以继续通信。
这样就存在两种情况,一种是只部署一个应用升级,即只部署APP_A或APP_B的升级,由于终端版本复杂,我们需要保证升级成功后,两端应用仍然可以正常通信。另一种情况是两个应用同时升级,如果其通信方式已经改变,需要两端应用同时升级才能正常使用。但是如果一端应用升级失败,则需要保证两端应用仍然可以正常使用。
因此,在终端情况复杂,版本信息也无法控制的情况下,本发明实施例提供了一种双系统下应用的升级方法,以保证双系统的相互配合的应用同时升级后能够正常通信,且可保证单端升级的应用一定可以和对端与之配合的应用可以正常通信,实现终端版本的匹配升级。
为实现升级后的两个应用的正常通信,本实施例通过通信版本号来保证两个应用应用的通信正常。首先,需要在进行APP开发时,在AndroidManifest中定义一个字段,用于标识两个系统交互的通信版本号,也可称为接口版本号。本实施例提出的通信版本号与应用版本号不同,应用版本号是开发每一款应用时,用于表征不同应用的版本,不同版本的应用其所能实现的功能会不同。应用版本号是随机生成的,不具有规律性,因此,在一个系统上的应用(APP_A)需要与另一个系统上的应用(APP_B)配合使用时,APP_A无法根据应用版本号匹配到APP_B,或者,匹配过程需要花费较长时间,两个应用之间无法及时通信,使得调取相应功能的响应时间长,影响用户的体验。
因此,本实施例中,采用通信版本号来保证两个应用的通信正常。通信版本号是指双系统两端能够进行通信的版本,通信版本号用于判断两个系统中相互配合使用的应用能否通信。通信版本号默认值为0时,表示系统预置版本号。如果通信方式发生改变,则需要升高通信版本号,即在上一版本号的基础值上加1,可见,通信版本号是有规律性的。升高版本号的过程则代表系统中对端应用之前的通信方式已经不能满足升级应用,需要两个应用同时升级,并且,需要升级到相同的通信版本号,才可以继续使用该应用。
具体地,图8中示例性示出了根据实施例中双系统下应用的升级方法的流程图;图9中示例性示出了根据实施例中双系统下应用的升级方法的数据流图;如图8和图9所示,本发明实施例提供的一种双系统下应用的升级方法,应用升级的检测和判断过程均发生在从系统中,即该方法应用于第一硬件系统,该方法包括以下步骤:
S1、根据应用升级指令,下载应用升级包。
在需要对应用进行升级时,由用户触发升级过程,触发的方式可通过点击遥控器上的按键或在显示设备中设置的个人中心界面点击升级。用户在触发升级按钮之后,显示设备的第一硬件系统中的升级模块生成应用升级指令,并根据应用升级指令,下载应用升级包,应用升级包可实现任一个系统中的应用的升级。
第一硬件系统在开始下载应用升级包时,同时向第二硬件系统发送升级准备指令,使得第二硬件系统更新升级状态为downloading,并记录下载进度。在第一硬件系统完成应用升级包的下载时,同时发送完成指令至第二硬件系统,使得第二硬件系统更新升级状态为下载完成。用户在第一硬件系统触发升级时,可同时通知第二硬件系统进入升级准备,并在完成下载时也及时通知第二硬件系统端,确保第二硬件系统进入待升级状态,以便可以随时根据第一硬件系统发送的应用升级包,实现应用的升级。
S2、判断应用升级包是否为双系统升级包;双系统升级包是指用于升级第一硬件系统中第一应用和第二硬件系统中第二应用的升级包,第一应用与第二应用配合工作。
由于本实施例提供的升级方法,可实现相互配合的两个应用的同时升级,也可以仅升级需要进行更新的应用,因此,针对不同的升级方式,所采用的应用升级包也不同。
为了提高升级率,本实施例中,将双系统两端都存在升级的应用,即上述APP_A(第一应用)和APP_B(第二应用)同时存在升级,则将上述配合的应用的升级文件打包成一个双系统升级包,双系统升级包用于实现相互配合的两个应用(第一应用和第二应用)的同时升级,双系统升级包与两个应用为一对二的关系。
针对单端的应用升级时,其升级文件与应用一一对应,因此,可根据升级文件唯一确定需要进行升级的应用数量。而双系统升级包可实现两个应用的同时升级,因此,本实施例可根据判断下载的应用升级包是否为双系统升级包的方式,来确定需要进行升级的应用数量,即升级过程是对第一硬件系统和第二硬件系统中相互配合的两个应用进行同时升级,还是仅对某一系统中需要进行升级的应用进行单独升级。
在判断应用升级包是否为双系统升级包时,可根据应用升级包携带的标志来判断。例如,产品中的升级包有两种,一种是标志为APK的单端升级包,一种是标志为ZIP的双端升级包。如果判断出应用升级包携带的标志为ZIP时,则可确定应用升级包为双系统升级包,而如果判断出应用升级包携带的标志为APK时,则可确定应用升级包为单系统升级包。
S3、如果应用升级包为双系统升级包,解压缩双系统升级包得到第一升级文件和第二升级文件;第一升级文件用于升级第一硬件系统中的第一应用,第二升级文件用于升级第二硬件系统中的第二应用。
如果判断出应用升级包为双系统升级包,说明当前升级过程是需要对双系统的相互配合的两个应用进行同时升级,因此,需在双系统升级包中解压缩出两个升级文件,即第一升级文件和第二升级文件。
两个升级文件分别实现对应系统中的应用的升级,即第一升级文件用于升级第一硬件系统中的第一应用,第二升级文件用于升级第二硬件系统中的第二应用。
S4、获取第一升级文件的通信版本号和第二升级文件的通信版本号。
为保证升级后的应用能够相互通信,本实施例采用通信版本号进行验证的方式,即通过验证两个应用的通信版本号的一致性来判断升级后的两个应用是否可正常通信。
通信版本号在开发APP阶段已预先定义,不同的应用具有不同的通信版本号,不同的系统也具有不同的通信版本号,而可实现相互通信、相互配合的应用之间,其对应的通信版本号是一致的,同样的,相互通信的系统之间,其对应的通信版本号也是一致的。也就是说,只有通信版本号一致的两个应用之间可以进行通信,以及,通信版本号一致的两个系统之间可以进行通信。
本实施例中,通过PackageManager分别对第一升级文件和第二升级文件进行解析,分别解析出其对应的通信版本号,即第一升级文件的通信版本号和第二升级文件的通信版本号。
S5、在第一升级文件的通信版本号和第二升级文件的通信版本号一致的情况下,将第一升级文件发送至第一硬件系统,由第一升级文件对第一应用进行升级,以及,将第二升级文件发送至第二硬件系统,由第二升级文件对第二应用进行升级。
在解析出每个升级文件的通信版本号之后,为确保两个升级文件为通信版本相同的升级文件,需要对两个升级文件的通信版本号进行比对,以保证两个升级文件可以进行相互通信,进而使得根据不同升级文件升级后的应用也可以进行相互通信。
因此,在根据升级文件对相应的应用升级之前,需要判断第一升级文件的通信版本号和第二升级文件的通信版本号是否一致,只有通信版本号一致时,才能保证后续升级后的应用的正常通信。
而如果判断出第一升级文件的通信版本号和第二升级文件的通信版本号一致时,说明升级后的应用可正常通信,因此,将第一升级文件发送至第一硬件系统,将第二升级文件发送至第二硬件系统。第一硬件系统根据第一升级文件开始安装,以实现对第一应用的升级,第二硬件系统根据第二升级文件开始安装,以实现对第二应用的升级。
可见,在对两个相互配合的应用升级之前,先预先判断两个升级文件的通信版本号的一致性,可以保证升级后的应用也具有一致的通信版本号,进而可以保证升级后的两个相互配合的应用仍然可以正常通信。
而如果判断出第一升级文件的通信版本号和第二升级文件的通信版本号不一致时,说明根据上述升级文件升级相应应用后,升级后的应用的通信版本号也会不一致,则会导致两个升级后的应用之间无法进行通信,进而导致显示设备中由上述配合使用的应用对应的功能失效,影响用户体验。
因此,为解决上述问题,本发明实施例提供的方法,还包括:如果第一升级文件的通信版本号和第二升级文件的通信版本号不一致,删除下载的应用升级包,结束应用升级过程。
在判断出第一升级文件的通信版本号和第二升级文件的通信版本号不一致时,本实施例提供的方法,采用在当前升级过程中不再对上述应用进行升级的方法,即删除已经下载的应用升级包,此时,删除的应用升级包为双系统升级包,并不再对上述两个应用进行升级,结束升级过程。
可见,该方法可以保证在第一升级文件的通信版本号和所述第二升级文件的通信版本号不一致时,不对相互配合的应用的当前通信版本进行更改,两个应用依然可以按照之前的通信版本进行通信,进而不会影响显示设备中的相应功能的使用。
在第一硬件系统安装第一升级文件,第二硬件系统安装第二升级文件时,由第一硬件系统的升级模块实时监控第一升级文件的安装状态和第二升级文件的安装状态,只有当两个升级文件均安装成功,才可说明升级完成。
在升级完成时,图10中示例性示出了根据又一实施例中双系统下应用的升级方法的流程图;如图10所示,为进一步保证升级后的两个应用之间可以正常通信,本实施例提供的方法,还包括:
S31、监测第一硬件系统中第一升级文件的安装状态和第二硬件系统中第二升级文件的安装状态。
S32、如果第一升级文件的安装状态为成功状态,以及,第二升级文件的安装状态为成功状态,获取升级后的第一应用的通信版本号和升级后的第二应用的通信版本号;
由第一硬件系统中的升级模块实时监控第一硬件系统中第一升级文件的安装状态,同时发送监控指令至第二硬件系统,由第二硬件系统返回当前的第二升级文件的安装状态。
当监测到第一升级文件安装完成且成功,以及第二升级文件安装完成且成功时,说明第一应用完成升级,第二应用也完成升级。
虽然在对两个应用升级之前,已经对各自的升级文件进行了一次通信版本号的一致性判断,但由于升级过程的不确定性,可能会出现升级后的应用之间通信版本号不一致的情况,因此,为保证升级后的两个应用之间可以正常通信,还需对升级后的应用的通信版本号进行比对。
在对第一应用和第二应用同时完成升级之后,再次获取升级后的第一应用的通信版本号和升级后的第二应用的通信版本号,以将两个通信版本号进行比对,以确保第一应用和第二应用在升级后仍可以正常通信。
S33、在升级后的第一应用的通信版本号和升级后的第二应用的通信版本号一致的情况下,第一应用和第二应用完成升级。
判断升级后的第一应用的通信版本号和升级后的第二应用的通信版本号的一致性,如果判断结果为一致时,说明升级后的第一应用和升级后的第二应用可以正常通信,随即确定第一应用和第二应用完成升级。
而如果判断出升级后的第一应用的通信版本号和升级后的第二应用的通信版本号不一致时,导致升级后的第一应用和升级后的第二应用无法正常通信,进而导致显示设备中由上述配合使用的应用对应的功能失效,影响用户体验。
因此,为解决上述问题,本发明实施例提供的方法,还包括:如果升级后的第一应用的通信版本号和升级后的第二应用的通信版本号不一致,将升级后的第一应用的通信版本号进行回退,以及,将升级后的第二应用的通信版本号进行回退。
在判断出升级后的第一应用的通信版本号和升级后的第二应用的通信版本号不一致时,本实施例提供的方法,采用将升级后的通信版本回退至前一通信版本的方式,即将升级后的第一应用的通信版本号进行回退,以及,将升级后的第二应用的通信版本号进行回退。
回退是指将当前通信版本号变更为前一通信版本号的过程,即由高版本退回低版本的过程。例如,第一应用升级前的通信版本号为0,升级后的通信版本号为1,那么经过回退操作后,则将第一应用的通信版本号由1变更为0,使第一应用继续使用值为0的通信版本号与第二应用实现通信;第二应用同理,此处不再列举。
可见,在两个升级后的应用的通信版本号不一致时,本实施例将升级后的两个应用通信版本号分别进行回退,以保证两个应用可以按照之前的通信版本号进行通信,避免影响显示设备的相应功能的使用。
在对两个应用进行同时升级时,可能存在两个应用同时升级成功、同时升级失败、一个升级成功而另一个升级失败的三种情况。当两个应用同时升级成功时,可采用上述实施例提供的方法对升级后的通信版本号进行校验,以保证升级后的两个应用能够正常通信。当两个应用同时升级失败时,则可直接删除下载的应用升级包,并结束升级过程。
而对于其中一个应用升级成功,另一个升级失败的情况,本实施例提供的方法,还可通过校验两个应用的通信版本号是否一致的方式,来判断两个应用是否能够通信,以确定是否完成应用升级。这是由于,如果一个应用中的通信版本号的兼容性比较好,其可以与多种通信版本号进行匹配,那么即使该应用升级失败,对端应用升级成功,对端应用的通信版本号升高后,仍然可与该升级失败的应用的原通信版本号进行匹配,以使两个应用之间仍然可进行正常通信。
因此,两个应用同时升级,在其中一个应用升级成功,另一个升级失败的情况下,本实施例提供的方法,图11中示例性示出了根据另一实施例中双系统下应用的升级方法的流程图;如图11所示,还包括:
S51、监测第一硬件系统中第一升级文件的安装状态和所述第二硬件系统中第二升级文件的安装状态。
S52、如果第一升级文件的安装状态为成功状态,以及,第二升级文件的安装状态为失败状态,获取升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号。
由第一硬件系统中的升级模块实时监控第一硬件系统中第一升级文件的安装状态,同时发送监控指令至第二硬件系统,由第二硬件系统返回当前的第二升级文件的安装状态。
当监测到第一升级文件安装完成且成功,而第二升级文件安装未成功时,说明第一应用完成升级,而第二应用升级失败。
此时,虽然一个应用完成了通信版本号的升级,而另一个应用的通信版本号保持原来的值,但为准确确定安装状态不同的两个应用之间是否可进行通信,需要再次获取升级后的第一应用的通信版本号和升级失败的第二应用的通信版本号,以将两个通信版本号进行比对,以确定升级成功的第一应用和升级失败的第二应用之间是否仍可以正常通信。
S53、在升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号一致的情况下,第一应用完成升级。
判断升级后的第一应用的通信版本号和升级失败的第二应用的通信版本号的一致性,如果判断结果为一致时,说明第二应用的通信版本号具有很强的兼容性,其可以与升级后的第一应用的通信版本后达成一致性,使得升级后的第一应用和升级失败的第二应用仍然可以正常通信,此时,可确定第一应用完成升级,而第二应用升级失败。
上述实施例是以第一应用升级成功,第二应用升级失败为例进行说明,而在实际应用时,还存在第一应用升级失败,而第二应用升级成功的情况。若在此种情况下时,其处理方法可参照上述实施例中步骤S51至S53的内容,确定第一应用的通信版本号具有很强的兼容性,其可以与升级后的第二应用的通信版本号达成一致性,使得升级失败的第一应用和升级后的第二应用仍然可以正常通信,此时,可确定第二应用完成升级,而第一应用升级失败。
可见,采用本实施例提供的方法,即使在对两个应用进行同时升级时,其中一个应用升级成功,而另一个应用升级失败,通过校验升级成功端的通信版本号和升级失败端的通信版本号的一致性,来判断升级失败端的通信版本号是否具有较强的兼容性。在判断升级失败的应用的通信版本号具有较强的兼容性时,其可与升级成功的应用之间仍然可以正常通信,使两个应用的通信版本匹配,避免影响显示设备的相应功能的使用。
而在判断出升级后的第一应用的通信版本号和升级失败的第二应用的通信版本号不一致时,那么说明升级失败的第二应用的通信版本号不具有兼容性,也就使升级后的第一应用与升级失败的第二应用之间无法进行通信,进而导致显示设备中由上述配合使用的应用对应的功能失效,影响用户体验。
因此,为解决上述问题,本发明实施例提供的方法,还包括:如果升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号不一致,将升级后的第一应用的版本进行回退。
在判断出升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号不一致时,本实施例提供的方法,采用将升级成功的通信版本回退至前一通信版本的方式,即将升级成功的第一应用的通信版本号进行回退。
将第一应用的通信版本号变更为之前的通信版本号后,此时可与第二应用的通信版本号匹配,进而可以保证两个应用可以按照之前的通信版本号进行通信,不会造成显示设备的相应功能的失效,使该功能可以被正常使用。
而对于两个应用同时升级过程中,存在的第一应用升级失败,而第二应用升级成功的情况,其处理方法可参照上述实施例中的内容,即在确定第二应用的通信版本号不具有兼容性后,将第二应用的通信版本号回退至前一通信版本号,使其可以与升级失败的第一应用的通信版本号匹配,使得两个应用可以按照之前的通信版本号进行通信。
可见,采用本实施例提供的方法,在对两个应用进行同时升级时,其中一个应用升级成功,而另一个应用升级失败,在校验升级成功端的通信版本号和升级失败端的通信版本号不一致时,将升级成功的应用的通信版本号回退至前一通信版本号,使得两个应用可以按照之前的通信版本号进行通信,不会造成显示设备的相应功能的失效,使该功能可以被正常使用。
本实施例提供的升级方法,可实现相互配合的两个应用的同时升级,也可以仅升级需要进行更新的应用,前述实施例公开的内容是针对双系统均存在升级的应用,即相互配合的两个应用同时升级的情况,而本发明另一实施例提供的升级方法,则主要针对只有一个系统端的应用需要进行升级的情况。
由于在用户触发应用升级功能时,第一硬件系统立即下载应用升级包,在该阶段,无法判断是需要对双系统的相互配合的两个应用进行同时升级,还是仅对一个系统中的应用进行单独升级。因此,本实施例提供的升级方法,采用根据判断下载的应用升级包是否是双系统升级包的方式,来确定升级方式。
双系统升级包是用来实现相互配合的两个应用的同时升级,即可实现双系统的应用升级,因此,在需要对单独系统的应用来升级时,图12中示例性示出了根据再一实施例中双系统下应用的升级方法的流程图;如图12所示,本实施例提供的方法,还包括:
S71、如果应用升级包不是双系统升级包,解析应用升级包,得到应用升级文件。
判断应用升级包是否为双系统升级包,如果应用升级包携带的标志为APK,而不是ZIP,则可确定应用升级包不是双系统升级包,而是单系统升级包,说明该应用升级包不能对相互配合的两个应用同时升级,而是仅能对单独的应用进行升级。
对应用升级包进行解析,得到可以实现单独应用升级的应用升级文件。
S72、根据应用升级文件,确定对端硬件系统和需要进行应用升级的目标硬件系统;对端硬件系统是指与目标硬件系统进行通信的系统。
由于显示设备具有双系统架构,因此,在进行单端应用升级时,需要确定出需要进行升级的应用配置在哪一系统中。解析出的应用升级文件中会携带匹配标识,匹配标识与需要进行应用升级的系统相匹配。因此,根据应用升级文件,即可确定出是哪一系统中的应用需要升级,将需要进行应用升级的系统称为目标硬件系统,需要进行升级的应用称为目标应用。
对端硬件系统是指与目标硬件系统进行通信的系统,即对端硬件系统中不具有需要进行升级的应用,而在具有与目标应用相互配合的对端应用。例如,如果根据应用升级文件,确定出目标硬件系统是第一硬件系统,目标应用为第一应用,那么对端硬件系统即为第二硬件系统,对端应用为第二应用;而如果目标硬件系统是第二硬件系统,目标应用为第二应用,那么对端硬件系统就是第一硬件系统,对端应用为第一应用。
S73、获取应用升级文件的通信版本号和对端硬件系统中对端应用的通信版本号。
为保证升级后的应用能够应用到该系统中,且可以与对端硬件系统中的对端应用正常通信,本实施例采用通信版本号进行验证的方式,即通过验证应用升级文件的通信版本号与对端硬件系统中对端应用的通信版本号的一致性,来确定升级后的应用是否仍可应用在该系统中,且是否可与对端应用保持正常通信。
本实施例中,通过PackageManager解析应用升级文件的通信版本号,并获取对端硬件系统中对端应用的通信版本号。
S74、在应用升级文件的通信版本号和对端应用的通信版本号一致的情况下,将应用升级文件发送至目标硬件系统,由目标硬件系统安装所述应用升级文件,实现目标硬件系统中的目标应用的升级。
由于在未升级前,目标应用可与对端应用进行正常通信,因此,为确保升级后的目标应用仍然可以与对端应用进行正常通信,需要对两个应用的通信版本号进行比对。也就是说,需要对比应用升级文件的通信版本号和对端应用的通信版本号,而在原目标应用可与对端应用通信的前提下,那么如果应用升级文件的通信版本号与对端应用的通信版本号一致时,即可以保证升级后的目标应用依然可与对端应用通信。
因此,本实施例中,将应用升级文件的通信版本号和对端应用的通信版本号进行对比,在一致时,即可说明应用升级文件可以应用在目标硬件系统中,也可以对目标应用进行升级。此时,将应用升级文件发送至目标硬件系统,由目标硬件系统进行安装,以实现目标应用的升级。
可见,本实施例提供的方法,在下载的应用升级包用于单端应用升级时,根据应用升级包确定目标硬件系统和对端硬件系统,并在应用升级包的通信版本号与对端硬件系统中的对端应用的通信版本号一致的情况下,由目标硬件系统安装该应用升级包,实现目标应用的升级,且可以保证升级后的目标应用仍可以与对端应用正常通信,进而不会影响显示设备中的由目标应用和对端应用配合实现的功能的使用。
而如果判断出应用升级文件的通信版本号与对端硬件系统中的对端应用的通信版本号不一致,说明该应用升级文件不可以应用在目标硬件系统中,也就无法对目标应用进行升级,以免导致升级后的目标应用的通信版本号与对端应用的通信版本号不一致,使得升级后的目标应用和对端应用无法正常通信,进而导致显示设备中由上述配合使用的应用对应的功能失效,影响用户体验。
因此,为解决上述问题,本发明实施例提供的方法,还包括:如果应用升级文件的通信版本号和对端硬件系统中对端应用的通信版本号不一致,删除下载的应用升级包,结束应用升级过程。
在判断出应用升级文件的通信版本号和对端硬件系统中对端应用的通信版本号不一致时,本实施例提供的方法,采用在当前升级过程中不再对上述目标应用进行升级的方法,即删除已经下载的应用升级包,结束目标应用的升级过程。
可见,该方法可以保证在应用升级文件的通信版本号和对端应用的通信版本号不一致时,不对需要进行升级的目标应用的当前通信版本进行更改,使得目标应用和对端应用依然可以按照之前的通信版本进行通信,进而不会影响显示设备中的相应功能的使用。
在完成目标应用的升级之后,还可执行一次校验过程,即校验升级后的目标应用的通信版本号是否与对端应用的通信版本号一致。为避免升级过程的不确定性,确保目标应用的通信版本可以正常升级,本实施例在目标应用升级之后,对升级后的目标应用和对端应用的通信版本号进行比对。
且在升级后的目标应用的通信版本号和对端应用的通信版本号一致时,说明升级后的目标应用和对端应用可以正常通信,随即确定目标应用完成升级。
而如果判断出升级后的目标应用的通信版本号和对端应用的通信版本号不一致时,导致升级后的目标应用和对端应用无法正常通信,进而导致显示设备中由上述配合使用的应用对应的功能失效,影响用户体验。因此,本实施例可采用将升级后的目标应用的通信版本号回退至前一通信版本的方式,即由高版本变更为低版本,使得目标应用和对端应用可以按照之前的通信版本号进行通信,避免影响显示设备的相应功能的使用。
由以上技术方案可知,本发明实施例提供的一种双系统下应用的升级方法,包括:根据应用升级指令,下载应用升级包;在应用升级包为双系统升级包时,解压缩双系统升级包得到第一升级文件和第二升级文件;判断第一升级文件的通信版本号和第二升级文件的通信版本号的一致性,如果一致时,则将第一升级文件发送至第一硬件系统,由第一升级文件对第一应用进行升级,以及,将第二升级文件发送至第二硬件系统,由第二升级文件对第二应用进行升级。可见,本实施例提供的方法,采用通信版本号的方式确定两个应用之间是否可以通信,使得升级后的应用之间具有匹配的通信版本号,进而可以保证升级后的两个相互配合的应用仍然可以正常通信,以保证显示设备中由上述配合使用的应用实现的功能可以正常使用,避免影响用户体验。
如图13所示,图13中示例性示出了根据实施例中双系统下应用的升级系统的结构框图。本发明实施例提供的一种双系统下应用的升级系统,用于执行如图8至图12所示的双系统下应用的升级方法,该系统包括:第一硬件系统和第二硬件系统,所述第一硬件系统通过有线方式与第二硬件系统连接,所述第二硬件系统用于根据第一硬件系统的指令执行相应的操作。
所述第一硬件系统用于根据应用升级指令,下载应用升级包;判断所述应用升级包是否为双系统升级包;所述双系统升级包是指用于升级第一硬件系统中第一应用和第二硬件系统中第二应用的升级包,所述第一应用与第二应用配合工作;如果所述应用升级包为双系统升级包,解压缩所述双系统升级包得到第一升级文件和第二升级文件;所述第一升级文件用于升级第一硬件系统中的第一应用,所述第二升级文件用于升级第二硬件系统中的第二应用;获取所述第一升级文件的通信版本号和所述第二升级文件的通信版本号;在所述第一升级文件的通信版本号和所述第二升级文件的通信版本号一致的情况下,将所述第一升级文件发送至第一硬件系统,由第一升级文件对第一应用进行升级,以及,将所述第二升级文件发送至第二硬件系统,由第二升级文件对第二应用进行升级。
可选地,所述第一硬件系统还用于:如果所述第一升级文件的通信版本号和所述第二升级文件的通信版本号不一致,删除下载的应用升级包,结束应用升级过程。
可选地,所述第一硬件系统还用于:监测所述第一硬件系统中第一升级文件的安装状态和所述第二硬件系统中第二升级文件的安装状态;如果所述第一升级文件的安装状态为成功状态,以及,第二升级文件的安装状态为成功状态,获取升级后的第一应用的通信版本号和升级后的第二应用的通信版本号;在所述升级后的第一应用的通信版本号和升级后的第二应用的通信版本号一致的情况下,所述第一应用和第二应用完成升级。
可选地,所述第一硬件系统还用于:如果所述升级后的第一应用的通信版本号和升级后的第二应用的通信版本号不一致,将升级后的第一应用的版本进行回退,以及,将升级后的第二应用的版本进行回退。
可选地,所述第一硬件系统还用于:监测所述第一硬件系统中第一升级文件的安装状态和所述第二硬件系统中第二升级文件的安装状态;如果所述第一升级文件的安装状态为成功状态,以及,第二升级文件的安装状态为失败状态,获取升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号;在所述升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号一致的情况下,所述第一应用完成升级。
可选地,所述第一硬件系统还用于:如果所述升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号不一致,将升级成功的第一应用的版本进行回退。
可选地,所述第一硬件系统还用于:如果所述应用升级包不是双系统升级包,解析所述应用升级包,得到应用升级文件;根据所述应用升级文件,确定对端硬件系统和需要进行应用升级的目标硬件系统;所述对端硬件系统是指与目标硬件系统进行通信的系统;获取所述应用升级文件的通信版本号和所述对端硬件系统中对端应用的通信版本号;在所述应用升级文件的通信版本号和对端应用的通信版本号一致的情况下,将应用升级文件发送至目标硬件系统,由所述目标硬件系统安装所述应用升级文件,实现目标硬件系统中的目标应用的升级。
可选地,所述第一硬件系统还用于:如果所述应用升级文件的通信版本号和对端硬件系统中对端应用的通信版本号不一致,删除下载的应用升级包,结束应用升级过程。
具体实现中,本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的一种双系统下应用的升级方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-onlymemory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于双系统下应用的升级系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
基于本申请中示出的示例性实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。此外,虽然本申请中公开内容按照示范性一个或几个实例来介绍,但应理解,可以就这些公开内容的各个方面也可以单独构成一个完整技术方案。
应当理解,本申请中说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,例如能够根据本申请实施例图示或描述中给出那些以外的顺序实施。
此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的那些组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (16)

1.一种双系统下应用的升级方法,其特征在于,包括以下步骤:
根据应用升级指令,下载应用升级包;
判断所述应用升级包是否为双系统升级包;所述双系统升级包是指用于升级第一硬件系统中第一应用和第二硬件系统中第二应用的升级包,所述第一应用与第二应用配合工作;
如果所述应用升级包为双系统升级包,解压缩所述双系统升级包得到第一升级文件和第二升级文件;所述第一升级文件用于升级第一硬件系统中的第一应用,所述第二升级文件用于升级第二硬件系统中的第二应用;
获取所述第一升级文件的通信版本号和所述第二升级文件的通信版本号;
在所述第一升级文件的通信版本号和所述第二升级文件的通信版本号一致的情况下,将所述第一升级文件发送至第一硬件系统,由第一升级文件对第一应用进行升级,以及,将所述第二升级文件发送至第二硬件系统,由第二升级文件对第二应用进行升级。
2.根据权利要求1所述的方法,其特征在于,还包括:
如果所述第一升级文件的通信版本号和所述第二升级文件的通信版本号不一致,删除下载的应用升级包,结束应用升级过程。
3.根据权利要求1所述的方法,其特征在于,还包括:
监测所述第一硬件系统中第一升级文件的安装状态和所述第二硬件系统中第二升级文件的安装状态;
如果所述第一升级文件的安装状态为成功状态,以及,第二升级文件的安装状态为成功状态,获取升级后的第一应用的通信版本号和升级后的第二应用的通信版本号;
在所述升级后的第一应用的通信版本号和升级后的第二应用的通信版本号一致的情况下,所述第一应用和第二应用完成升级。
4.根据权利要求3所述的方法,其特征在于,还包括:
如果所述升级后的第一应用的通信版本号和升级后的第二应用的通信版本号不一致,将升级后的第一应用的版本进行回退,以及,将升级后的第二应用的版本进行回退。
5.根据权利要求1所述的方法,其特征在于,还包括:
监测所述第一硬件系统中第一升级文件的安装状态和所述第二硬件系统中第二升级文件的安装状态;
如果所述第一升级文件的安装状态为成功状态,以及,第二升级文件的安装状态为失败状态,获取升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号;
在所述升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号一致的情况下,所述第一应用完成升级。
6.根据权利要求5所述的方法,其特征在于,还包括:
如果所述升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号不一致,将升级成功的第一应用的版本进行回退。
7.根据权利要求1所述的方法,其特征在于,还包括:
如果所述应用升级包不是双系统升级包,解析所述应用升级包,得到应用升级文件;
根据所述应用升级文件,确定对端硬件系统和需要进行应用升级的目标硬件系统;所述对端硬件系统是指与目标硬件系统进行通信的系统;
获取所述应用升级文件的通信版本号和所述对端硬件系统中对端应用的通信版本号;
在所述应用升级文件的通信版本号和对端应用的通信版本号一致的情况下,将应用升级文件发送至目标硬件系统,由所述目标硬件系统安装所述应用升级文件,实现目标硬件系统中的目标应用的升级。
8.根据权利要求7所述的方法,其特征在于,还包括:
如果所述应用升级文件的通信版本号和对端硬件系统中对端应用的通信版本号不一致,删除下载的应用升级包,结束应用升级过程。
9.一种双系统下应用的升级系统,其特征在于,包括:第一硬件系统和第二硬件系统,所述第一硬件系统通过有线方式与第二硬件系统连接,所述第二硬件系统用于根据第一硬件系统的指令执行相应的操作;
所述第一硬件系统用于根据应用升级指令,下载应用升级包;
判断所述应用升级包是否为双系统升级包;所述双系统升级包是指用于升级第一硬件系统中第一应用和第二硬件系统中第二应用的升级包,所述第一应用与第二应用配合工作;
如果所述应用升级包为双系统升级包,解压缩所述双系统升级包得到第一升级文件和第二升级文件;所述第一升级文件用于升级第一硬件系统中的第一应用,所述第二升级文件用于升级第二硬件系统中的第二应用;
获取所述第一升级文件的通信版本号和所述第二升级文件的通信版本号;
在所述第一升级文件的通信版本号和所述第二升级文件的通信版本号一致的情况下,将所述第一升级文件发送至第一硬件系统,由第一升级文件对第一应用进行升级,以及,将所述第二升级文件发送至第二硬件系统,由第二升级文件对第二应用进行升级。
10.根据权利要求9所述的系统,其特征在于,所述第一硬件系统还用于:
如果所述第一升级文件的通信版本号和所述第二升级文件的通信版本号不一致,删除下载的应用升级包,结束应用升级过程。
11.根据权利要求9所述的系统,其特征在于,所述第一硬件系统还用于:
监测所述第一硬件系统中第一升级文件的安装状态和所述第二硬件系统中第二升级文件的安装状态;
如果所述第一升级文件的安装状态为成功状态,以及,第二升级文件的安装状态为成功状态,获取升级后的第一应用的通信版本号和升级后的第二应用的通信版本号;
在所述升级后的第一应用的通信版本号和升级后的第二应用的通信版本号一致的情况下,所述第一应用和第二应用完成升级。
12.根据权利要求11所述的系统,其特征在于,所述第一硬件系统还用于:
如果所述升级后的第一应用的通信版本号和升级后的第二应用的通信版本号不一致,将升级后的第一应用的版本进行回退,以及,将升级后的第二应用的版本进行回退。
13.根据权利要求9所述的系统,其特征在于,所述第一硬件系统还用于:
监测所述第一硬件系统中第一升级文件的安装状态和所述第二硬件系统中第二升级文件的安装状态;
如果所述第一升级文件的安装状态为成功状态,以及,第二升级文件的安装状态为失败状态,获取升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号;
在所述升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号一致的情况下,所述第一应用完成升级。
14.根据权利要求13所述的系统,其特征在于,所述第一硬件系统还用于:
如果所述升级成功的第一应用的通信版本号和升级失败的第二应用的通信版本号不一致,将升级成功的第一应用的版本进行回退。
15.根据权利要求9所述的系统,其特征在于,所述第一硬件系统还用于:
如果所述应用升级包不是双系统升级包,解析所述应用升级包,得到应用升级文件;
根据所述应用升级文件,确定对端硬件系统和需要进行应用升级的目标硬件系统;所述对端硬件系统是指与目标硬件系统进行通信的系统;
获取所述应用升级文件的通信版本号和所述对端硬件系统中对端应用的通信版本号;
在所述应用升级文件的通信版本号和对端应用的通信版本号一致的情况下,将应用升级文件发送至目标硬件系统,由所述目标硬件系统安装所述应用升级文件,实现目标硬件系统中的目标应用的升级。
16.根据权利要求15所述的系统,其特征在于,所述第一硬件系统还用于:
如果所述应用升级文件的通信版本号和对端硬件系统中对端应用的通信版本号不一致,删除下载的应用升级包,结束应用升级过程。
CN201910891465.3A 2019-06-10 2019-09-20 一种双系统下应用的升级方法及系统 Active CN112068855B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2019104982064 2019-06-10
CN201910498206 2019-06-10

Publications (2)

Publication Number Publication Date
CN112068855A true CN112068855A (zh) 2020-12-11
CN112068855B CN112068855B (zh) 2024-03-26

Family

ID=73658478

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910891465.3A Active CN112068855B (zh) 2019-06-10 2019-09-20 一种双系统下应用的升级方法及系统

Country Status (1)

Country Link
CN (1) CN112068855B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112579131A (zh) * 2020-12-28 2021-03-30 深圳市鸿合创新信息技术有限责任公司 多系统设备的应用程序管理方法、装置和电子设备
CN112817625A (zh) * 2021-01-29 2021-05-18 青岛海信移动通信技术股份有限公司 系统升级方法、装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106201586A (zh) * 2016-06-28 2016-12-07 青岛海信移动通信技术股份有限公司 一种基于ota的系统升级方法及终端、系统
WO2017161947A1 (zh) * 2016-03-23 2017-09-28 广州视睿电子科技有限公司 多系统ota升级方法和多系统设备
CN107943502A (zh) * 2017-12-01 2018-04-20 天津麒麟信息技术有限公司 一种Linux系统下基于细粒度系统状态检测的升级方法
CN108170450A (zh) * 2017-12-28 2018-06-15 北京远特科技股份有限公司 一种设备中系统固件的升级方法、装置及系统
CN108491222A (zh) * 2018-03-27 2018-09-04 青岛海信智慧家居系统股份有限公司 网关设备升级方法、装置、网关设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017161947A1 (zh) * 2016-03-23 2017-09-28 广州视睿电子科技有限公司 多系统ota升级方法和多系统设备
CN106201586A (zh) * 2016-06-28 2016-12-07 青岛海信移动通信技术股份有限公司 一种基于ota的系统升级方法及终端、系统
CN107943502A (zh) * 2017-12-01 2018-04-20 天津麒麟信息技术有限公司 一种Linux系统下基于细粒度系统状态检测的升级方法
CN108170450A (zh) * 2017-12-28 2018-06-15 北京远特科技股份有限公司 一种设备中系统固件的升级方法、装置及系统
CN108491222A (zh) * 2018-03-27 2018-09-04 青岛海信智慧家居系统股份有限公司 网关设备升级方法、装置、网关设备及存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112579131A (zh) * 2020-12-28 2021-03-30 深圳市鸿合创新信息技术有限责任公司 多系统设备的应用程序管理方法、装置和电子设备
CN112817625A (zh) * 2021-01-29 2021-05-18 青岛海信移动通信技术股份有限公司 系统升级方法、装置、电子设备及存储介质
CN112817625B (zh) * 2021-01-29 2024-03-08 青岛海信移动通信技术有限公司 系统升级方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN112068855B (zh) 2024-03-26

Similar Documents

Publication Publication Date Title
CN112399212A (zh) 显示设备、分享文件的方法和服务器
CN112068741B (zh) 显示设备及显示设备蓝牙开关状态的显示方法
CN112399232A (zh) 一种显示设备、摄像头优先级使用的控制方法及装置
CN110708581A (zh) 显示设备及呈现多媒体屏保信息的方法
CN112068987A (zh) 一种快速进行恢复出厂设置的方法及装置
CN112073778A (zh) 显示设备及按键传递的容错方法
CN112463267A (zh) 在显示设备屏幕上呈现屏保信息的方法及显示设备
CN112073813B (zh) 显示设备及双系统间异常启动的检测与处理方法
CN112073790B (zh) 显示设备及双系统间启动状态的同步方法
CN112068855B (zh) 一种双系统下应用的升级方法及系统
CN112073769A (zh) 显示设备及应用共同显示的方法
CN112528051A (zh) 一种演唱作品的发布方法、显示设备及服务器
CN112423042A (zh) 一种双系统蓝牙遥控器的升级方法及系统
CN110784766A (zh) 一键升级显示设备的方法及显示设备
CN112073812B (zh) 一种智能电视上的应用管理方法及显示设备
CN112449245B (zh) 双系统显示设备应用升级进度显示方法及显示设备
CN112073776B (zh) 语音控制方法及显示设备
CN112346754A (zh) 一种双系统应用升级界面显示的控制方法及装置
CN112073816A (zh) 双系统usb升级方法、装置及显示设备
CN112073773A (zh) 一种屏幕互动方法、装置及显示设备
CN112073777A (zh) 一种语音交互方法及显示设备
CN112073666A (zh) 一种显示设备的电源控制方法及显示设备
CN112073808A (zh) 一种色彩空间切换方法及显示装置
CN112071338A (zh) 一种录音控制方法、装置和显示设备
CN112073779B (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
GR01 Patent grant
GR01 Patent grant