一种机顶盒升级方法及装置的制作方法

文档序号:7862015阅读:9304来源:国知局
专利名称:一种机顶盒升级方法及装置的制作方法
技术领域
本发明涉及数字电视领域,特别是涉及一种机顶盒升级方法及装置。
背景技术
机顶盒内有功能多样的应用程序,在用户使用机顶盒的过程中,随着机顶盒新功能的增加或是解决修复新的问题都需要对机顶盒的应用程序进行升级。在进行应用程序升级的过程中,可能会遇到各种突发状况而导致应用程序升级失败,例如机顶盒在应用程序升级过程中突然断电。此时,如果没有采取一定的保护措施,可能就会造成机顶盒再也无法 启动,给用户或者维修人员带来更大的修复难度。现有技术采用的解决方法是在bootloader (引导加载程序)里进行软件升级及修复,但bootloader —般用于系统的初始化和解压应用程序代码,比较短小,并不适于软件升级或修复。因此,在机顶盒应用程序升级过程中出现异常并遭到破坏时如何对其进行软件升级或修复,使得机顶盒能正常启动成为一个亟待解决的问题。

发明内容
本发明主要解决的技术问题是提供一种机顶盒升级方法及装置,以解决现有技术的机顶盒升级方法在应用程序升级失败后机顶盒无法正常启动的问题。为解决上述技术问题,本发明采用的一个技术方案是提供一种机顶盒升级方法,该方法包括步骤对应用程序进行升级;检测升级后的应用程序是否正常;若异常,则启动应急程序以对应用程序进行再次升级。其中,在对应用程序进行升级的步骤之前,该方法进一步包括步骤升级应急程序,或者获取并存储应急程序。其中,升级应急程序,或者获取并存储应急程序的步骤包括判断是否已存储应急程序;若已存储,则判断应急程序是否需要升级,若需要升级则对应急程序进行升级;以及若未存储,则获取并存储应急程序。其中,获取并存储应急程序的步骤包括将闪存中的用户数据区的用户数据保存至内存中;将应急程序存储至用户数据区中。其中,在对应用程序进行升级的步骤之后,该方法进一步包括步骤将内存中的用户数据存储至用户数据区中。其中,对应用程序进行再次升级的方式包括空中下载技术升级、USB升级和网络升级。为解决上述技术问题,本发明采用的另一个技术方案是提供一种机顶盒升级装置,该装置包括应用程序升级模块,对应用程序进行升级;判断模块,检测升级后的应用程序是否正常;修复模块,当判断模块检测出升级后的应用程序异常时,启动应急程序以对应用程序进行再次升级。
其中,该装置进一步包括应急程序管理模块,用于升级应急程序,或者获取并存储应急程序。其中,应急程序管理模块包括判断单元,判断是否已存储应急程序,若已存储,则判断应急程序是否需要升级;应急程序升级单元,当判断单元判断应急程序需要升级时,对应急程序进行升级;应急程序获取单元,当判断单元判断未存储应急程序时,获取并存储应急程序。其中,应急程序获取单元用于将闪存中的用户数据区的用户数据保存至内存中;将应急程序存储至用户数据区中;在升级模块对应用程序进行升级后,将内存中的用户数据存储至用户数据区中。本发明的有益效果是区别于现有技术的情况,本发明的机顶盒升级方法及装置在机顶盒应用程序升级失败后,启动应急程序进行应用程序再次升级或修复,从而有效防止机顶盒应用程序升级失败并遭到破坏时机顶盒不能正常启动的情况发生,再次升级或修复的过程方便快捷,应急程序占用存储空间小,给用户及维修人员带来了极大方便。


图I是本发明机顶盒升级方法第一实施例的流程图;图2是本发明机顶盒升级装置第一实施例的结构示意图;图3是本发明机顶盒升级方法一具体实施例的流程图;以及图4是本发明机顶盒升级方法另一具体实施例的流程图。
具体实施例方式下面结合附图和实施例对本发明进行详细说明。图I是本发明机顶盒升级方法第一实施例的流程图。如图I所示,该方法包括步骤S102、对应用程序进行升级;机顶盒从网络服务器端或外部设备端获取应用程序升级包,并利用获取的应用程序升级包对应用程序进行升级,对应用程序进行升级的具体方式,例如可以采用空中下载技术升级、USB升级和网络升级,此处不做限制。S103、检测升级后的应用程序是否正常;例如可以运行闪存中的bootloader以检测应用程序是否正常,如果检测正常则启动应用程序,如果应用程序在S102步骤的升级过程中出现异常情况而未升级成功并遭到破坏(例如应用程序在升级的过程中机顶盒突然断电等情况),则执行步骤S104。S104、启动应急程序以对应用程序进行再次升级;当步骤S103中检测得出应用程序出现异常后,机顶盒在闪存中查找应急程序并启动应急程序,在应急程序中进行应用程序的再次升级以修复出现异常的应用程序,对应用程序进行再次升级的具体方式包括空中下载技术升级、USB升级和网络升级等,此处不作限制。若机顶盒中未存储有应急程序或者机顶盒中存储的应急程序并不是最新版本的,则在步骤S102之前,机顶盒升级方法还进一步包括步骤
S101、升级应急程序,或者获取并存储应急程序。步骤SlOl具体包括如下步骤a、判断是否已存储应急程序;对已烧入、未烧入且未存储或者未烧入但已存储应急程序的机顶盒本发明方法皆适用,本步骤将判断机顶盒中是否已存储应急程序;b、若已存储,则判断应急程序是否需要升级,若需要升级则对应急程序进行升级;机顶盒从网络服务器端或外部设备端获取应急程序升级包,并利用获取的应急程序升级包对应急程序进行升级,具体的升级方法例如可以采用空中下载技术升级、USB升级和网络升级,此处不做限制; C、若未存储,则获取并存储应急程序;机顶盒从网络服务器端或外部设备端获取应急程序,并将应急程序存储至机顶盒的闪存中。应急程序在闪存中有两种存储方式,即临时存储和固定存储。临时存储是指进行应用程序升级前,将应急程序临时存储在闪存的用户数据区中,当应用程序升级成功后,将临时存储在闪存的用户数据区的应急程序清除掉。本实施例中,将应急程序存储至闪存中的步骤具体包括将闪存中的用户数据区的用户数据保存至内存中;将应急程序存储至用户数据区中;在应用程序升级成功后,将存储在用户数据区的应急程序清除掉并将内存中的用户数据存储至用户数据区中。固定存储是指机顶盒在闪存中分配独立的应急程序存储区,应急程序固定存储在该应急程序存储区,其中,固定存储的应急程序可以通过烧录的方式存储至该应急程序存储区内。图2是本发明机顶盒升级装置第一实施例的结构示意图。如图2所示,机顶盒升级装置包括应急程序管理模块10、应用程序升级模块20、判断模块30和修复模块40。应急程序管理模块10用于升级应急程序,或者获取并存储应急程序。应用程序升级模块20与应急程序管理模块10相连接,用于对应用程序进行升级。判断模块30与应用程序模块20相连接,用于检测升级后的应用程序是否正常。修复模块40与判断模块30相连接,用于当判断模块30检测出升级后的应用程序异常时,启动应急程序以对应用程序进行再次升级。其中,对应用程序进行再次升级的方式包括空中下载技术升级、USB升级和网络升级等。进一步地,应急程序管理模块10包括判断单元11、应急程序升级单元12和应急程序获取单兀13。判断单元11用于判断是否已存储应急程序,若已存储,则判断应急程序是否需要升级。应急程序升级单元12与判断单元11相连接,用于当判断单元11判断应急程序需要升级时,对应急程序进行升级。应急程序获取单元13与判断单元11相连接,用于当判断单元11判断未存储应急程序时,获取并存储所述应急程序。具体来说,应急程序获取单元13用于将闪存中的用户数据区的用户数据保存至内存中;将应急程序存储至用户数据区中;在应用程序升级模块20对应用程序进行升级后,将内存中的用户数据存储至用户数据区中。
图3是本发明机顶盒升级方法一具体实施例的流程图。该方法包括步骤S301 :将闪存中的用户数据区的用户数据保存至内存中;在本实施例中,闪存保存有bootloader,应用程序以及用户数据等等。其中,在进行应用程序升级前,先将用户数据临时保存至内存中。步骤S302 :将应急程序存储至用户数据区中;获取应急程序并将应急程序存储至用户数据区。将应急程序存储至用户数据区可以不占用闪存的额外空间,比较适合闪存空间较小的机顶盒来实现。步骤S303 :对应用程序进行升级;获取应用程序的升级包,并将闪存中的应用程序升级为最新版本。 步骤S304 :将内存中的用户数据存储至用户数据区中;将存储在用户数据区的应急程序清除掉并将内存中的用户数据写回用户数据区中。步骤S305 :检测升级后的应用程序是否正常;机顶盒重新启动后,运行闪存中的bootloader以检测应用程序是否正常。步骤S306 :在闪存中的用户数据区查找应急程序并启动应急程序,对应用程序进行再次升级。如果步骤S305检测得出的应用程序异常,则在闪存中的用户数据区查找应急程序并启动应急程序,在应急程序中进行应用程序的再次升级。在本实施例中,应急程序和应用程序的升级包相互独立。在制作升级程序的过程中,应急程序和应用程序的升级包被打包在一起。在本实施例中,机顶盒升级过程中,如果将闪存中的用户数据区的用户数据保存至内存中时失败,例如将闪存中的用户数据区的用户数据保存至内存中时机顶盒突然断电,则机顶盒重新启动后,运行闪存中的bootloader可以检测到应用程序正常,但用户数据被破坏。机顶盒的应用程序可正常运行,但版本为旧版本。此时,可对应用程序进行再次升级。在本实施例中,机顶盒升级过程中,如果对应用程序进行升级时失败,例如对应用程序进行升级时机顶盒突然断电,则机顶盒重新启动后,运行闪存中的bootloader可以检测到应用程序异常并遭到破坏。此时,在闪存中的用户数据区查找应急程序并启动应急程序,在应急程序中进行应用程序的再次升级。在本实施例中,机顶盒升级过程中,如果将内存中的用户数据存储至用户数据区中时失败,例如将内存中的用户数据存储至用户数据区中时机顶盒突然断电,则机顶盒重新启动后,运行闪存中的bootloader可以检测到应用程序正常,但用户数据被破坏。机顶盒的应用程序可正常运行,版本为最新版本。此时,只要进行搜台即可正常观看节目。图4是本发明机顶盒升级方法另一具体实施例的流程图。该方法包括步骤S401 :判断应急程序是否需要升级?若需要,则执行步骤S402,若不需要,则执行步骤S403 ;在本实施例中,闪存中分配有独立的应急程序存储区,在机顶盒出厂时,应急程序已烧入该应急程序存储区。将应急程序存储至应急程序存储区需要占用闪存的额外空间,比较适合闪存空间较大的机顶盒来实现。
在本实施例中,闪存保存有bootloader,应急程序、应用程序以及用户数据等等。判断应急程序是否需要升级的步骤具体为判断闪存中的应急程序是否正常或者判断升级文件中是否要求升级应急程序。 步骤S402 :对应急程序进行升级;如果步骤S401判断应急程序需要升级,则在本步骤中获取应急程序的升级包并对应急程序进行升级。步骤S403 :对应用程序进行升级;获取应用程序的升级包,并将闪存中的应用程序升级为最新版本。步骤S404 :检测升级后的应用程序是否正常;·
机顶盒重新启动后,运行闪存中的bootloader以检测应用程序是否正常。步骤S405 :启动应急程序以对应用程序进行再次升级。如果步骤S404检测得出的应用程序异常,则启动保存在应急程序存储区的应急程序,在应急程序中进行应用程序的再次升级。在本实施例中,应急程序的升级包是应用程序的升级包的一部分。在制作升级程序的过程中,应急程序的升级包和应用程序的升级包被打包在一起。在本实施例中,机顶盒升级过程中,如果对应急程序进行升级时失败,例如对应急程序进行升级时机顶盒突然断电,则机顶盒重新启动后,运行闪存中的bootloader可以检测到应用程序正常,应急程序被破坏。机顶盒的应用程序可正常运行,版本为旧版本。此时,可对应急程序进行再次升级,然后对应用程序进行再次升级。在本实施例中,机顶盒升级过程中,如果对应用程序进行升级时失败,例如对应用程序进行升级时机顶盒突然断电,则机顶盒重新启动后,运行闪存中的bootloader可以检测到应用程序异常并遭到破坏。此时,在应急程序存储区查找应急程序并启动应急程序,在应急程序中进行应用程序的再次升级。通过上述方式,本发明的机顶盒升级方法及装置在机顶盒应用程序升级失败后,启动应急程序进行应用程序再次升级或修复,从而有效防止机顶盒应用程序升级失败并遭到破坏时机顶盒不能正常启动的情况发生,再次升级或修复的过程方便快捷,给用户及维修人员带来了极大方便。以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
权利要求
1.一种机顶盒升级方法,其特征在于,所述方法包括步骤 对应用程序进行升级; 检测升级后的应用程序是否正常; 若异常,则启动应急程序以对所述应用程序进行再次升级。
2.根据权利要求I所述的机顶盒升级方法,其特征在于,在所述对应用程序进行升级的步骤之前,所述方法进一步包括步骤 升级应急程序,或者获取并存储应急程序。
3.根据权利要求2所述的机顶盒升级方法,其特征在于,所述升级应急程序,或者获取并存储应急程序的步骤包括 判断是否已存储应急程序; 若已存储,则判断所述应急程序是否需要升级,若需要升级则对所述应急程序进行升级;以及 若未存储,则获取并存储应急程序。
4.根据权利要求3所述的机顶盒升级方法,其特征在于,所述获取并存储应急程序的步骤包括 将闪存中的用户数据区的用户数据保存至内存中; 将所述应急程序存储至所述用户数据区中。
5.根据权利要求4所述的机顶盒升级方法,其特征在于,在所述对应用程序进行升级的步骤之后,所述方法进一步包括步骤 将所述内存中的所述用户数据存储至所述用户数据区中。
6.根据权利要求I所述的机顶盒升级方法,其特征在于,所述对应用程序进行再次升级的方式包括 空中下载技术升级、USB升级和网络升级。
7.一种机顶盒升级装置,其特征在于,所述装置包括 应用程序升级模块,对应用程序进行升级; 判断模块,检测升级后的应用程序是否正常; 修复模块,当所述判断模块检测出升级后的应用程序异常时,启动应急程序以对所述应用程序进行再次升级。
8.根据权利要求7所述的机顶盒升级装置,其特征在于,所述装置进一步包括 应急程序管理模块,用于升级应急程序,或者获取并存储应急程序。
9.根据权利要求8所述的机顶盒升级装置,其特征在于,应急程序管理模块包括 判断单元,判断是否已存储应急程序,若已存储,则判断所述应急程序是否需要升级; 应急程序升级单元,当所述判断单元判断所述应急程序需要升级时,对所述应急程序进行升级; 应急程序获取单元,当所述判断单元判断未存储应急程序时,获取并存储所述应急程序。
10.根据权利要求9所述的机顶盒升级装置,其特征在于,所述应急程序获取单元用于 将闪存中的用户数据区的用户数据保存至内存中;将所述应急程序存储至所述用户数据区中; 在所述升级模块对所述应用程序进行升级后,将所述内存中的所述用户数据存储至所述用户数据区中。·
全文摘要
本发明公开了一种机顶盒升级方法及装置。该方法包括对应用程序进行升级;检测升级后的应用程序是否正常;若异常,则启动应急程序以对应用程序进行再次升级。通过上述方式,本发明在机顶盒应用程序升级失败后,从应急程序启动并在应急程序中进行应用程序的再次升级或修复,可防止机顶盒应用程序升级失败并遭到破坏时机顶盒不能正常启动的情况发生。
文档编号H04N21/443GK102917267SQ20121037459
公开日2013年2月6日 申请日期2012年9月27日 优先权日2012年9月27日
发明者黄秋平 申请人:深圳创维数字技术股份有限公司, 深圳市创维软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1