一种非智能机顶盒自动升级app应用的方法及机顶盒与流程

文档序号:30225434发布日期:2022-06-01 00:53阅读:187来源:国知局
一种非智能机顶盒自动升级app应用的方法及机顶盒与流程

1.本发明涉及机顶盒的技术领域,特别涉及一种非智能机顶盒自动升级app 应用的方法及机顶盒。


背景技术:

2.众所周知,一般智能设备和机顶盒都是可以随意更新其中任意的一个app 的,在不更新系统软件的情况下,对单个app应用更新,这个目前来说只有安卓或者ios等操作系统能做到。而采用ecos操作系统或者linux操作系统的机顶盒和设备是需要将app应用软件编译到系统软件中,通过更新系统软件达到升级单个app应用的目的。
3.非智能设备的app应用更新是需要基于系统的软件更新的,这是目前行业内的通常做法。一般情况下设备和机顶盒的系统更新频率是相当低的,因为比较稳定。但是app应用的更新频率是极其高的,通过以前的软件更新方式,不仅效率低,而且每次更新还需要耗费时间和精力去测试整机软件,因为整机软件发放很有可能引起其他的bug。


技术实现要素:

4.本发明所要解决的技术问题是克服现有技术的不足,本发明第一目的为提供了一种自动升级的非智能机顶盒自动升级app应用的方法。
5.本发明第二目的为提供一种自动升级的机顶盒。
6.本发明所采用的技术方案是:所述的非智能机顶盒自动升级app应用的方法包括:
7.将app应用程序编译成动态库,将动态库编译到机顶盒系统的烧写软件中;
8.判断flash的可读写区域是否有保存对应app应用的动态库,有则记录动态库的地址、大小和版本;否则将动态库拷贝到flash的可读写区域,并记录地址、大小和版本;
9.机顶盒访问更新服务器,获取指定app应用程序的版本,并与flash中 app应用程序的版本进行比较,版本一致则不做任何处理;版本更新则将启动线程下载该app应用程序的动态库;
10.待该app应用程序未使用时,替换掉flash中的app应用程序,并更新信息。
11.进一步,在所述的机顶盒访问更新服务器,获取指定app应用程序的版本,并与flash中app应用程序的版本进行比较,版本一致则不做任何处理;版本更新则将启动线程下载该app应用程序的动态库的步骤之后,所述的待该app应用程序未使用时,替换掉flash中的app应用程序,并更新信息的步骤之前还包括以下步骤:
12.下载完成后通过crc校检模块进行校检,判断与服务器回传的是否一致,不一致则重新下载。
13.进一步,所述的待该app应用程序未使用时,替换掉flash中的app应用程序,并更新app应用程序的版本、大小的步骤包括:
14.判断用户是否在使用该app应用程序,如果不是,替换掉flash中的app 应用程序,并更新信息;如果是,等退出该应用程序后再行替换,并更新信息。
15.本发明还提供了一种机顶盒,所述的机顶盒包括:
16.编译模块,用于将app应用程序编译成动态库;
17.判断模块,用于判断flash的可读写区域是否有保存对应app应用的动态库,有则记录动态库的地址、大小和版本;否则将动态库拷贝到flash的可读写区域,并记录地址、大小和版本;
18.比较模块,用于机顶盒访问更新服务器,获取指定app应用程序的版本,并与flash中app应用程序的版本进行比较,版本一致则不做任何处理;版本更新则将启动线程下载该app应用程序的动态库;
19.更新模块,用于待该app应用程序未使用时,替换掉flash中的app应用程序,并更新信息。
20.进一步,在所述比较模块之后,所述更新模块之前还包括:
21.校检模块,用于下载完成后通过crc校检模块进行校检,判断与服务器回传的是否一致,不一致则重新下载。
22.本发明的有益效果是:
23.所述的非智能机顶盒自动升级app应用的方法能够基于ecos或linux等不支持单独更新app应用软件的操作系统,达到可以类似于安卓或ios操作系统的单个的自动更新app应用软件,这样就不用高频次的更新app应用软件,避免每次都要打包更新整个系统软件的情况,能够极大程度的减少更新软件可能产生的bug,同时提高了用户的体验。
附图说明
24.图1是非智能机顶盒自动升级app应用的方法的流程图;
25.图2是本发明的逻辑图;
26.图3是机顶盒的示意图。
具体实施方式
27.下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
28.应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
29.如图1至图2所示,在本实施例中,所述的非智能机顶盒自动升级app 应用的方法包括:
30.步骤s1、将app应用程序编译成动态库,将动态库编译到机顶盒系统的烧写软件中;
31.步骤s2、判断flash的可读写区域是否有保存对应app应用的动态库,有则记录动态库的地址、大小和版本;否则将动态库拷贝到flash的可读写区域,并记录地址、大小和版本;
32.具体地,机顶盒起机时,在flash的可读写区域中判断是否有保存对应 app应用的动态库。
33.步骤s3、机顶盒访问更新服务器,获取指定app应用程序的版本,并与 flash中app应用程序的版本进行比较,版本一致则不做任何处理;版本更新则将启动线程下载该app应用程序的动态库;
34.具体地,机顶盒起机时,访问服务器地址以获取最新app应用程序的版本信息进行比较,以决定是否更新。
35.步骤s5、待该app应用程序未使用时,替换掉flash中的app应用程序,并更新信息。
36.具体地,当有用户使用该app应用程序时则等待更新,待用户退出该app 应用程序时进行替换,并更新关于该app应用程序的版本、大小等信息。
37.在步骤s3后、步骤s5之前还包括步骤s4:
38.步骤s4、下载完成后通过crc校检模块进行校检,判断与服务器回传的是否一致,不一致则重新下载。
39.具体地,所述crc校检模块为循环冗余校验,对下载的内容进行校验,当下载的内容错误时则删除,并重新下载。
40.在上述步骤s5中,所述的待该app应用程序未使用时,替换掉flash中的app应用程序,并更新信息的步骤包括:
41.判断用户是否在使用该app应用程序,如果不是,替换掉flash中的app 应用程序,并更新信息;如果是,等退出该应用程序后再行替换,并更新信息。
42.所述的非智能机顶盒自动升级app应用的方法能够基于ecos或linux等不支持单独更新app应用软件的操作系统,达到可以类似于安卓或ios操作系统的单个的自动更新app应用软件,这样就不用高频次的更新app应用软件,避免每次都要打包更新整个系统软件的情况,能够极大程度的减少更新软件可能产生的bug,同时提高了用户的体验。
43.应用场景一:app快速迭代
44.安卓或者是其他智能手机、盒子类产品都是app应用更新推送,并且单个app软件更新非常频繁。但是基于ecos或linux等不支持单独更新app应用软件的设备就很难实现app软件快速迭代,因为app更新需要对整个系统软件进行更新,这样导致更新意愿大幅下降。例如手机app更新需要更新整个手机系统才可以,那么我们应该是几个月甚至一年更新一次,那么app的更新迭代速度就非常低。
45.应用场景二:app灰度更新
46.灰度更新是将最新的app在局部更新使用,没有问题之后再放开给全部用户。我们这种app更新方式可以控制某一个地区或者客户推送app更新达到这个目的,然后局部验证没有问题之后再大范围的推广更新。
47.由上述可知,所述的非智能机顶盒自动升级app应用的方法不仅能够应用于app快速迭代的应用场景,还能够应用于app灰度更新的应用场景,灰度更新是将最新的app在局部更新使用,没有问题之后再放开给全部用户。这种app更新方式可以控制某一个地区或者客户推送app更新达到这个目的,然后局部验证没有问题之后再大范围的推广更新。
48.如图3所示,本发明还提供了一种机顶盒,所述的机顶盒包括:
49.编译模块10,用于将app应用程序编译成动态库;
50.判断模块20,用于判断flash的可读写区域是否有保存对应app应用的动态库,有则记录动态库的地址、大小和版本;否则将动态库拷贝到flash 的可读写区域,并记录地址、大小和版本;
51.比较模块30,用于机顶盒访问更新服务器,获取指定app应用程序的版本,并与flash中app应用程序的版本进行比较,版本一致则不做任何处理;版本更新则将启动线程下载该app应用程序的动态库;
52.更新模块50,用于待该app应用程序未使用时,替换掉flash中的app 应用程序,并更新版本、大小等信息。
53.在所述比较模块之后,所述更新模块之前还包括:
54.校检模块40,用于下载完成后通过crc校检模块进行校检,判断与服务器回传的是否一致,不一致则重新下载。
55.本实施例所提供的机顶盒,用于将app应用程序编译成动态库;用于判断flash的可读写区域是否有保存对应app应用的动态库,有则记录动态库的地址、大小和版本;否则将动态库拷贝到flash的可读写区域,并记录地址、大小和版本;用于机顶盒访问更新服务器,获取指定app应用程序的版本,并与flash中app应用程序的版本进行比较,版本一致则不做任何处理;版本更新则将启动线程下载该app应用程序的动态库;用于下载完成后通过 crc校检模块进行校检,判断与服务器回传的是否一致,不一致则重新下载;用于待该app应用程序未使用时,替换掉flash中的app应用程序,并更新版本、大小等信息。所述的机顶盒能够基于ecos或linux等不支持单独更新 app应用软件的操作系统,达到可以类似于安卓或ios操作系统的单个的自动更新app应用软件,这样就不用高频次的更新app应用软件,避免每次都要打包更新整个系统软件的情况,能够极大程度的减少更新软件可能产生的 bug,同时提高了用户的体验。
56.需要说明的是,本实施例为与上述的方法项实施例相对应的装置项实施例,本实施例可与上述方法项实施例互相配合实施。上述方法项实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在上述方法项实施例中。虽然本发明的实施例是以实际方案来描述的,但是并不构成对本发明含义的限制,对于本领域的技术人员,根据本说明书对其实施方案的修改及与其他方案的组合都是显而易见的。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1