一种固件升级包下发方法、获取方法及装置的制造方法

文档序号:9730298阅读:380来源:国知局
一种固件升级包下发方法、获取方法及装置的制造方法
【技术领域】
[0001]本发明涉及通讯领域,特别是涉及一种固件升级包下发方法、获取方法及装置。
【背景技术】
[0002]Al I Joyn是一种基于C/S架构的设备之间点对点通信框架,由Bus Daemon (总线守护进程)和终端节点组成。Bus Daemon负责终端节点之间的消息路由,服务发现等功能。终端节点是指运行在设备上的应用程序,启动后需要连接到Bus Daemon上。Bus Daemon可以看作是运行在不同的设备上的总线(Bus)分段。设备的Bus Daemon连接起来便构成了一个连通的点对点网络系统的总线。总线为分布式系统提供了一个快速、轻量级的方式来传递消息序列。它的目标就是让两个应用程序进行通信,而无需处理底层机制的细节。然而,由于Al I Joyn采用面向本地网络连接的接口,因此,Al I Joyn设备无法通过Al I Joyn接口直接连接远程的服务器获取固件升信息,可见,目前AllJoyn网络中缺少一种对AllJoyn设备本地化升级固件的方法。

【发明内容】

[0003]本发明提供一种固件升级包下发方法、获取方法及装置,用以解决目前AllJoyn网络中无法对Al I Joyn设备进行固件升级的问题。
[0004]根据本发明的第一个方面,提供了一种固件升级包下发方法,包括:从升级服务器端获取控制终端管理的AllJoyn设备的固件升级信息;广播固件升级包的描述信息;接收来自AllJoyn设备的固件升级包的获取请求;根据获取请求将对应的固件升级包发送给发送获取请求的Al I Joyn设备。
[0005]其中,广播固件升级包的描述信息,包括:将固件升级包的描述信息添加到固件列表,广播固件列表以及控制终端的会话端口信息;固件升级包的描述信息,包括:固件的映像、固件的身份标识ID、固件的版本以及固件对应的设备型号。
[0006]进一步的,上述固件升级包下发方法还包括:在接收来自AllJoyn设备的固件升级包的获取请求之前,根据预设的可连接AllJoyn设备的数量,确定是否允许发送获取请求的Al I Joyn设备与控制终?而建立连接。
[0007]根据本发明的第二个方面,提供了一种固件升级包获取方法,包括:接收到来自控制终端的固件升级包的描述信息后,根据固件升级包的描述信息判断固件升级包是否适用于All Joyn设备,以及All Joyn设备的固件版本是否低于固件升级包的版本,如果固件升级包适用于AllJoyn设备且AllJoyn设备的固件版本低于固件升级包的版本,则缓存固件升级包的描述信息;判断AllJoyn设备当前的运行状态是否能够进行固件升级,如果是,则根据缓存的固件升级包的描述信息向AllJoyn设备的控制终端获取最新的固件升级包。
[0008]进一步的,上述固件升级包获取方法还包括:在判断AllJoyn设备当前的运行状态是否能够进行固件升级之前,如果再次接收到固件升级包的描述信息,将再次接收的固件升级包的描述信息与缓存的最新的固件升级包的描述信息进行对比;仅在再次接收到的固件升级包比缓存的最新的固件升级包的版本高的情况下缓存再次接收到的固件升级包的描述信息,且删除之前缓存的固件升级包的描述信息。
[0009]其中,接收到来自控制终端的固件升级包的描述信息后,根据固件升级包的描述信息判断固件升级包是否适用于Al I Joyn设备,以及Al I Joyn设备的固件版本是否低于固件升级包的版本,如果固件升级包适用于AllJoyn设备且AllJoyn设备的固件版本低于固件升级包的版本,则缓存固件升级包的描述信息,包括:AllJoyn设备接收到多个固件升级广播消息,广播消息中包括多个固件升级包的描述信息,选择适用于AllJoyn设备且版本最高的固件升级包的描述信息进行缓存,多个固件升级广播消息来自不同的控制终端。
[0010]根据本发明发明的第三个方面,提供了一种固件升级包下发装置,包括:获取模块,用于从升级服务器端获取控制终端管理的AllJoyn设备的固件升级包的描述信息;广播模块,用于广播固件升级包的描述信息;第一接收模块,用于接收来自AllJoyn设备的固件升级包的获取请求;发送模块,用于根据获取请求将对应的固件升级包发送给发送获取请求的Al I Joyn设备。
[0011]其中,上述广播模块具体用于:将固件升级包的描述信息添加到固件列表,广播固件列表以及控制终端的会话端口信息,固件升级包的描述信息,包括:固件的映像、固件的身份标识ID、固件的版本以及固件对应的设备型号。
[0012]进一步的,上述固件升级包下发装置还包括:确定模块,用于在接收来自AlIJoyn设备的固件升级包的获取请求之前,根据预设的可连接AllJoyn设备的数量,确定是否允许发送获取请求的Al I Joyn设备与控制终端建立连接。
[0013]根据本发明的第四个方面,提供了一种固件升级包获取装置,包括:第二接收模块,用于接收到来自控制终端的固件升级包的描述信息后,根据固件升级包的描述信息判断固件升级包是否适用于Al I Joyn设备,以及Al I Joyn设备的固件版本是否低于固件升级包的版本,如果固件升级包适用于AllJoyn设备且AllJoyn设备的固件版本低于固件升级包的版本,则缓存固件升级包的描述信息;判断模块,用于判断AllJoyn设备当前的运行状态是否能够进行固件升级,如果是,则根据缓存的固件升级包的描述信息向AllJoyn设备的控制终端获取最新的固件升级包。
[0014]进一步的,上述固件升级包获取装置还包括:对比模块,用于在判断AllJoyn设备当前的运行状态是否能够进行固件升级之前,如果再次接收到固件升级包的描述信息,将再次接收的固件升级包的描述信息与缓存的最新的固件升级包的描述信息进行对比;缓存模块,用于仅在再次接收到的固件升级包比缓存的最新的固件升级包的版本高的情况下缓存再次接收到的固件升级包的描述信息,且删除之前缓存的固件升级包的描述信息。
[0015]其中,上述第二接收模具体用于=AllJoyn设备接收到多个固件升级广播消息,广播消息中包括多个固件升级包的描述信息,选择适用于AllJoyn设备且版本最高的固件升级包的描述信息进行缓存,多个固件升级广播消息来自不同的控制终端。
[0016]本发明有益效果如下:
[0017]本发明实施例通过控制终端向AllJoyn设备发布固件升级包的描述信息,使得AllJoyn设备可以根据自身固件情况确定是否需要固件升级,以及在确定需要固件升级的情况下可以便捷的从控制终端处获取最新的固件数据,使得AllJoyn设备的固件升级操作变得简单便捷。
【附图说明】
[0018]图1是本发明实施例1中提供的固件升级包下发方法的流程图;
[0019]图2是本发明实施例1中提供的固件升级包获取方法的流程图;
[0020]图3是本发明实施例2中提供的AllJoyn设备固件升级的流程图;
[0021]图4是本发明实施例3中提供的通过控制终端与AllJoyn设备进行交互来实现AllJoyn设备固件升级的方法的流程图;
[0022]图5是本发明实施例4中通过控制终端与AllJoyn设备进行交互来实现AllJoyn设备固件升级的方法的流程图;
[0023]图6是本发明实施例5提供的固件升级包下发装置的结构框图;
[0024]图7是本发明实施例5提供的固件升级包获取装置的结构框图。
【具体实施方式】
[0025]为了解决现有技术目前AllJoyn网络中无法对AllJoyn设备进行固件升级的问题,本发明提供了一种固件升级包下发方法、获取方法及装置,以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
[0026]实施例1
[0027]本实施例提供了一种固件升级包下发方法,该方法可以由控制终端来实现,图1是该方法的流程图,如图1所示,该方法包括如下步骤:
[0028]步骤101:从升级服务器端获取控制终端管理的AllJoyn设备的固件升级包的描述信息;
[0029]其中,固件升级包的描述信息具体可以包括:固件的映像、固件的ID(例如固件映像的哈希值)、固件的版本以及固件对应的设备型号,其中,固件的映像即为固件的数据。
[0030]步骤102:广播固件升级包的描述信息;
[0031]其中,广播固件升级包的描述信息具体可以包括:将固件升级包的描述信息添加到固件列表,广播固件列表以及控制终端的会话端口信息。
[0032]步骤103:接收来自Al I Joyn设备的固件升级包的获取请求;
[0033]进一步的,接收来自AllJoyn设备的固件升级包的获取请求包括:根据预设的可连接AllJoyn设备的数量,确定是否允许发送获取请求的AllJoyn设备与控制终端建立连接。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1