CN117931223A - 固件升级方法、装置及系统 - Google Patents
固件升级方法、装置及系统 Download PDFInfo
- Publication number
- CN117931223A CN117931223A CN202311126381.3A CN202311126381A CN117931223A CN 117931223 A CN117931223 A CN 117931223A CN 202311126381 A CN202311126381 A CN 202311126381A CN 117931223 A CN117931223 A CN 117931223A
- Authority
- CN
- China
- Prior art keywords
- firmware
- mobile terminal
- server
- firmware version
- version
- 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 105
- 238000004891 communication Methods 0.000 claims abstract description 57
- 230000004044 response Effects 0.000 claims description 8
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 9
- 238000012790 confirmation Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000000977 initiatory effect 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
- 230000008447 perception Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Landscapes
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开涉及一种固件升级方法、装置及系统,该方法包括:在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,从服务器获取第二固件版本的固件包,目标设备是与车辆建立了通信连接的设备;根据该固件包对目标设备进行固件升级。通过上述方案,能够通过移动终端从服务器获取新版本的固件包并对目标设备进行固件升级,能够避免因车辆无网络或者网络不佳、车辆网络受流量限制等情况下,无法完成目标设备的固件升级的问题。
Description
技术领域
本公开涉及升级技术领域,尤其涉及一种固件升级方法、装置及系统。
背景技术
随着技术的发展,车机系统越来越智能,车机能够连接的智能设备也越来越多。智能设备的固件是可以升级迭代的,在相关技术中通常是利用车机系统来访问OTA(Over-the-Air,空中下载)服务器来下载固件包,再将对应的固件包下发给对应的智能设备,来完成固件升级。但是,如果车辆停放在没有网络覆盖的地方,则无法上网,无法完成智能设备的固件升级。另外,车载网络可能还会存在网络信号差、流量不足、流量资费高等问题,也在一定程度影响智能设备固件升级的使用体验。
发明内容
为克服相关技术中存在的问题,本公开提供一种固件升级方法、装置及系统。
根据本公开实施例的第一方面,提供一种固件升级方法,应用于移动终端,所述方法包括:
在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,从所述服务器获取所述第二固件版本的固件包,所述目标设备是与车辆建立了通信连接的设备;
根据所述固件包对所述目标设备进行固件升级。
可选地,所述在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,从所述服务器获取所述第二固件版本的固件包,包括:
从所述车辆获取所述第一固件版本;
在所述服务器中查询到存在比所述第一固件版本新的所述第二固件版本时,从所述服务器获取所述第二固件版本的固件包。
可选地,所述在所述服务器中查询到存在比所述第一固件版本新的所述第二固件版本时,从所述服务器获取所述第二固件版本的固件包,包括:
向所述服务器发送查询请求,所述查询请求用于向所述服务器请求查询所述目标设备的最新固件版本;
接收所述服务器响应于所述查询请求所反馈的所述第二固件版本;
在所述第二固件版本是比所述第一固件版本新的任一版本的情况下,从所述服务器下载所述第二固件版本的固件包。
可选地,所述在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,从所述服务器获取所述第二固件版本的固件包,包括:
接收所述车辆发送的第二固件版本,所述第二固件版本是所述车辆从所述服务器查询到的比所述第一固件版本新的任一版本;
根据所述第二固件版本,从所述服务器下载所述第二固件版本的固件包。
可选地,所述接收所述车辆发送的第二固件版本,包括:
在所述车辆为行驶状态,且所述车辆在根据剩余行驶时间以及车机网络状态确定所述车辆无法完成所述固件包下载的情况下,接收所述车辆发送的第二固件版本。
可选地,
所述根据所述固件包对所述目标设备进行固件升级,包括:
确认所述目标设备是否允许与所述移动终端直接连接;
在所述目标设备允许与所述移动终端直接连接的情况下,建立所述移动终端与所述目标设备之间的通信连接,或者通过所述车辆建立所述移动终端与所述目标设备之间的通信连接;
在所述移动终端与所述目标设备之间的通信连接建立后,向所述目标设备发送所述固件包,用于所述目标设备根据所述固件包进行固件升级。
可选地,所述根据所述固件包对所述目标设备进行固件升级,还包括:
在所述目标设备不允许与所述移动终端直接连接的情况下,将所述固件包发送给所述车辆,以通过所述车辆将所述固件包发送给所述目标设备,用于所述目标设备根据所述固件包进行固件升级。
可选地,在所述车辆处于行驶状态时,所述确认所述目标设备是否允许与所述移动终端直接连接,包括:
确认所述目标设备是否允许在行驶状态下升级;
在所述目标设备不允许在所述行驶状态下升级时,将所述固件包发送给所述车辆,以通过所述车辆在进入驻车状态时将所述固件包发送给所述目标设备,用于所述目标设备根据所述固件包进行固件升级;
在所述目标设备允许在所述行驶状态下升级时,确认所述目标设备是否允许与所述移动终端直接连接。
根据本公开实施例的第二方面,提供一种固件升级方法,应用于车辆,所述方法包括:
获取目标设备的当前的第一固件版本,所述目标设备是与所述车辆建立了通信连接的设备,所述第一固件版本用于确定服务器中是否存在比所述第一固件版本新的第二固件版本;
在所述服务器中存在比所述第一固件版本新的第二固件版本,且所述移动终端从所述服务器中获取所述第二固件版本的固件包时,与所述移动终端通过所述固件包对所述目标设备进行固件升级。
可选地,所述在所述服务器中存在比所述第一固件版本新的第二固件版本,且所述移动终端从所述服务器中获取所述第二固件版本的固件包时,与所述移动终端通过所述固件包对所述目标设备进行固件升级,包括:
向所述移动终端发送所述第一固件版本;所述第一固件版本用于所述移动终端根据所述第一固件版本在所述服务器中查询是否存在比所述第一固件版本新的第二固件版本,并在确认存在所述第二固件版本的情况下,从所述服务器下载所述固件包;
与所述移动终端通过所述固件包对所述目标设备进行固件升级。
可选地,所述在所述服务器中存在比所述第一固件版本新的第二固件版本,且所述移动终端从所述服务器中获取所述第二固件版本的固件包时,与所述移动终端通过所述固件包对所述目标设备进行固件升级,包括:
向所述服务器发送查询请求,所述查询请求用于向所述服务器请求查询所述目标设备的最新固件版本;
接收所述服务器响应于所述查询请求所反馈的所述第二固件版本;
在所述第二固件版本是比所述第一固件版本新的任一版本的情况下,向所述移动终端发送所述第二固件版本;所述第二固件版本用于所述移动终端根据所述第二固件版本,从所述服务器下载所述第二固件版本的所述固件包。
可选地,所述向所述移动终端发送所述第二固件版本,包括:
在所述车辆为行驶状态,根据剩余行驶时间以及车机网络状态确定所述车辆是否能够完成所述固件包下载;
在所述车辆无法完成所述固件包下载的情况下,向所述移动终端发送所述第二固件版本。
可选地,所述与所述移动终端通过所述固件包对所述目标设备进行固件升级,包括:
确认所述目标设备是否允许与所述移动终端直接连接;
在所述目标设备允许与所述移动终端直接连接的情况下,建立所述移动终端与所述目标设备之间的通信连接,所述通信连接用于所述移动终端向所述目标设备发送所述固件包,所述固件包用于所述目标设备根据所述固件包进行固件升级。
可选地,所述与所述移动终端通过所述固件包对所述目标设备进行固件升级,包括:
在所述目标设备不允许与所述移动终端直接连接的情况下,接收所述移动终端发送的所述固件包;
将所述固件包发送给所述目标设备,用于所述目标设备根据所述固件包进行固件升级。
可选地,在所述车辆处于行驶状态时,所述确认所述目标设备是否允许与所述移动终端直接连接,包括:
确认所述目标设备是否允许在行驶状态下升级;
在所述目标设备不允许在所述行驶状态下升级时,接收所述移动终端发送的所述固件包;
在所述车辆在进入驻车状态时,将所述固件包发送给所述目标设备,用于所述目标设备根据所述固件包进行固件升级;
在所述目标设备允许在所述行驶状态下升级时,确认所述目标设备是否允许与所述移动终端直接连接。
根据本公开实施例的第三方面,提供一种固件升级装置,应用于移动终端,所述装置包括:
获取模块,被配置为在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,从所述服务器获取所述第二固件版本的固件包,所述目标设备是与车辆建立了通信连接的设备;
执行模块,被配置为根据所述固件包对所述目标设备进行固件升级。
根据本公开实施例的第四方面,提供一种固件升级装置,应用于车辆,所述装置包括:
获取模块,被配置为获取目标设备的当前的第一固件版本,所述目标设备是与所述车辆建立了通信连接的设备,所述第一固件版本用于确定服务器中是否存在比所述第一固件版本新的第二固件版本;
执行模块,被配置为在所述服务器中存在比所述第一固件版本新的第二固件版本,且所述移动终端从所述服务器中获取所述第二固件版本的固件包时,与所述移动终端通过所述固件包对所述目标设备进行固件升级。
根据本公开实施例的第五方面,提供一种固件升级系统,所述系统包括:移动终端、服务器、车辆和目标设备,所述目标设备是与所述车辆建立了通信连接的设备;
所述车辆用于获取所述目标设备的当前的第一固件版本,并将所述第一固件版本发送至所述移动终端;
所述移动终端用于在服务器中查询是否存在比所述第一固件版本新的第二固件版本,并在所述服务器中存在比所述第一固件版本新的第二固件版本时从所述服务器中获取所述第二固件版本的固件包;
所述移动终端还用于根据所述固件包对所述目标设备进行固件升级。
本公开的实施例提供的技术方案可以包括以下有益效果:
在上述技术方案中,在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,从服务器获取第二固件版本的固件包,其中目标设备是与车辆建立了通信连接的待升级的设备;利用该固件包对目标设备进行固件升级。通过上述方案,能够通过移动终端从服务器获取新版本的固件包并对目标设备进行固件升级,由于无需使用车机网络下载固件包,因此能够避免因车辆无网络或者网络不佳、车辆网络受流量限制等情况下,无法完成目标设备的固件升级的问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的一种固件升级方法的流程图。
图2是根据一示例性实施例示出的另一种固件升级方法的流程图。
图3是根据一示例性实施例示出的另一种固件升级方法的流程图。
图4是根据一示例性实施例示出的另一种固件升级方法的流程图。
图5是根据一示例性实施例示出的另一种固件升级方法的流程图。
图6是根据一示例性实施例示出的另一种固件升级方法的流程图。
图7是根据一示例性实施例示出的又一种固件升级方法的流程图。
图8是根据一示例性实施例示出的另一种固件升级方法的流程图。
图9是根据一示例性实施例示出的另一种固件升级方法的流程图。
图10是根据一示例性实施例示出的又一种固件升级方法的流程图。
图11是根据一示例性实施例示出的又一种固件升级方法的流程图。
图12是根据一示例性实施例示出的一种固件升级装置的框图。
图13是根据一示例性实施例示出的又一种固件升级装置的框图。
图14是根据一示例性实施例示出的一种固件升级系统的结构图。
图15是根据一示例性实施例示出的一种电子设备的功能框图示意图(电子设备的一般结构)。
图16是根据一示例性实施例示出的一种车辆的功能框图示意图(车辆的一般结构)。
图17是根据一示例性实施例示出的一种服务器装置的功能框图示意图(服务器的一般结构)。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
需要说明的是,本申请中所有获取信号、信息或数据的动作都是在遵照所在地国家相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
图1是根据一示例性实施例示出的一种固件升级方法的流程图,该方法可以应用于移动终端中,如图1所示,该方法可以包括以下步骤:
在步骤S11中,在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,从服务器获取第二固件版本的固件包,目标设备是与车辆建立了通信连接的设备。
示例地,该目标设备可以是能够与车辆的车机建立连接,并且能够与车机交互的任意智能设备或非智能设备,该目标设备的固件可以进行升级迭代。移动终端例如可以是手机,PAD(平板电脑)等。服务器可以是OTA(Over-the-Air,空中下载)服务器,该服务器可以由目标设备厂商部署。
示例性的,车辆启动后,与目标设备建立通信连接,可以获取目标设备的设备信息,如目标设备的当前的第一固件版本,而后可以执行以下流程:
(1)车辆可以将该第一固件版本发送给该移动终端;
(2)移动终端获取到该第一固件版本后,向服务器查询该服务器中是否存在该目标设备的比当前的第一固件版本新的第二固件版本;
其中,该第二固件版本可以是比该目标设备当前的第一固件版本新的任一固件版本。
(3)当服务器中存在该第二固件版本时,移动终端下载服务器中的第二固件版本的固件包。
或者,在另一种实现方式中,步骤(2)也可以由车辆执行,即车辆也可以直接向服务器查询该服务器中是否存在比当前的第一固件版本新的第二固件版本,并将查询结果发送给该移动终端。移动终端在确定查询结果为存在该第二固件版本时,执行步骤(3)。
在步骤S12中,根据该固件包对目标设备进行固件升级。
示例地,移动终端在本地缓存固件包后,通知车辆以通过车辆利用固件包对目标设备进行固件升级。或者,在该目标设备能够与移动终端直接建立通信连接的情况下,例如目标设备为具有触控屏幕的设备,能够直接进行人机交互来实现与移动终端直接建立连接,也可以由移动终端直接将该固件包发送给目标设备进行固件升级。
通过上述方案,在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,移动终端从服务器中获取第二固件版本的固件包,并利用该固件包完成对目标设备的固件升级;实现了通过移动终端从服务器获取新版本的固件包并对目标设备进行固件升级,由于无需使用车机网络下载固件包,因此能够避免因车辆无网络或者网络不佳、车辆网络受流量限制等情况下,无法完成目标设备的固件升级的问题。
在一种实施方式中,可以由移动终端从服务器查询固件版本,图2是根据一示例性实施例示出的另一种固件升级方法的流程图,应用于移动终端,如图2所示,上述步骤S11所述的在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,从服务器获取第二固件版本的固件包,可以包括以下步骤:
在步骤S111中,从车辆获取目标设备当前的第一固件版本。
示例地,车辆可以与移动终端建立通信连接,例如WiFi连接或者蓝牙连接,从而移动终端可以基于该通信连接从车辆获取该目标设备的设备信息,例如,该设备信息可以包括:目标设备的升级信息查询策略,该升级信息查询策略可以为:每次启动车辆都进行查询,或者可以设置一个周期内仅查询一次,该周期可以是天、周、月等单位时间,该升级信息查询策略可以根据用户需求进行偏好设置,本公开不做限制;该设备信息还可以包括该目标设备的当前的第一固件版本,当根据该升级信息查询策略确定需要查询目标设备的升级信息时,移动终端从车辆获取目标设备当前的第一固件版本,并缓存在移动终端。
可选地,用户在可以根据自身需要进行偏好选择设置,选择升级策略,该升级策略可以由移动终端或者车辆来执行,该升级策略可以包括:自适应(可以由移动终端或者车辆来自行决定使用移动终端升级还是选择车机网络升级)、使用车机网络或使用移动终端。
在步骤S112中,在服务器中查询到存在比第一固件版本新的第二固件版本时,从服务器获取第二固件版本的固件包。
示例地,移动终端,例如手机,在处于可用的网络环境中时,如在可用的WiFi网络或移动数据(如4G或5G网络)质量好的环境下,移动终端可以从服务器中查询该目标设备在服务器中记录的版本信息中,是否存在比当前的第一固件版本新的版本,当服务器中查询到的第二固件版本是比其缓存的第一固件版本新的版本时,从服务器中下载第二固件版本的固件包,并缓存于移动终端。
图3是根据一示例性实施例示出的另一种固件升级方法的流程图,应用于移动终端,如图3所示,上述步骤S112所述的在服务器中查询到存在比第一固件版本新的第二固件版本时,从服务器获取第二固件版本的固件包,可以包括以下步骤:
在步骤S1121中,向服务器发送查询请求,查询请求用于向服务器请求查询目标设备的最新固件版本。
在步骤S1122中,接收服务器响应于查询请求所反馈的第二固件版本。
在步骤S1123中,在第二固件版本是比第一固件版本新的任一版本的情况下,从服务器下载第二固件版本的固件包。
示例地,该服务器可以是OTA服务器,移动终端可以向该OTA服务器发送新版本的查询请求,服务器接收到查询请求后,查询目标设备是否存在新版本,并将查询结果反馈给移动终端。该查询结果用于指示是否存在比第一固件版本新的版本,当存在比第一固件版本新的第二固件版本时,移动终端可以从服务器下载该第二固件版本的固件包。
在另一种实现方式中,可以由车辆从服务器查询固件版本,图4是根据一示例性实施例示出的另一种固件升级方法的流程图,应用于移动终端,如图4所示,上述步骤S11所述的在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,从服务器获取第二固件版本的固件包,可以包括以下步骤:
在步骤S113中,接收车辆发送的第二固件版本,第二固件版本是该车辆从服务器查询到的比第一固件版本新的任一版本。
示例地,车辆与目标设备建立通信连接后,可以获取目标设备的第一固件版本,在确定需要查询升级信息时,车辆可以从服务器中查询该目标设备在服务器中记录的版本信息中,是否存在比当前的第一固件版本新的版本,当服务器中查询到的第二固件版本是比其缓存的第一固件版本新的版本时,向移动终端发送该第二固件版本。
在步骤S114中,根据该第二固件版本,从服务器下载第二固件版本的固件包。
示例地,移动终端在接收到第二固件版本时,与服务器通信,从服务器中下载第二固件版本的固件包。
可选的,上述第二固件版本可以是车辆获取第二固件版本后直接发给移动终端的。或者,车辆在发送第二固件版本之前,可以先评估自身是否可以完成固件包下载,从而决定是由车辆下载该固件包,还是由该移动终端来下载。
在车辆为行驶状态,且车辆在根据剩余行驶时间以及车机网络状态确定该车辆无法完成固件包下载的情况下,接收车辆发送的第二固件版本。
示例地,在上述升级策略为自适应的情况下,车辆可以先根据该第一固件版本在服务器中查询是否存在该第二固件版本,在查询到存在该第二固件版本的情况下,车辆可以根据由导航软件计算的行驶时间(指从当前位置到目的地的剩余行驶时间)以及车机网络状态(例如信号强度、网络下行速率等)判断,在车辆到达目的地前能否完成该固件包下载,在判断结果为在到达目的地前无法完成固件包下载时,车辆将第二固件版本发送给移动终端,移动终端接收该第二固件版本,并由该移动终端从服务器下载该第二固件版本的固件包;当判断结果为在到达目的地前能够完成固件包下载时,车辆则可以通过车机网络来进行固件包下载,通过以上方法能够实现移动终端下载固件包或车辆下载固件包的自适应策略。
图5是根据一示例性实施例示出的另一种固件升级方法的流程图,应用于移动终端,如图5所示,上述步骤S12所述的根据固件包对目标设备进行固件升级,可以包括以下步骤:
在步骤S121中,确认目标设备是否允许与移动终端直接连接。
示例地,目标设备与车辆通信过程中,车辆可以获取目标设备的设备类型,根据设备类型来确认该目标设备是否允许移动终端直接连接。例如,在一种实施方式中,车辆在获取目标设备的设备类型后可以将该设备类型发送给移动终端,由移动终端根据该设备类型来判断目标设备是否可以与移动终端直接连接。或者,在另一种实现方式中,车辆根据设备类型确认该目标设备是否允许移动终端直接连接,再将是否允许移动终端直接连接的确认结果发送给该移动终端。
可选地,可以在第二固件版本的配置文件中预先配置是否允许与移动终端直接连接的字段,从而移动终端或者车辆在获取该第二固件版本后,根据配置文件中的该字段即可确认目标设备是否允许移动终端直接连接。
可选地,车辆还可以通过弹窗提示用户是否要建立目标设备与移动终端的直接连接。在用户确定建立目标设备与移动终端的直接连接的情况下,向移动终端发送同意直接连接的通知消息,该移动终端根据该通知消息确定目标设备允许直接连接,进而移动终端可以与目标设备建立直接连接;用户确定不建立直接连接的情况下,向移动终端发送不同意直接连接的通知消息,该移动终端根据该通知消息确定目标设备不允许直接连接,则目标设备与移动终端不建立直接连接。可选地,如果该目标设备为能够直接进行人机交互的设备,例如该目标设备设置有触控屏幕,则该目标设备可以在其触控屏幕上提示是否直接建立与移动终端的直接连接的提示,并在用户同意后开放相应的无线接口(例如蓝牙或者WIFI)供移动设备搜索并发起连接。
在步骤S122中,在目标设备允许与移动终端直接连接的情况下,建立该移动终端与该目标设备之间的通信连接,或者通过车辆建立移动终端与目标设备之间的通信连接。
示例地,当目前设备为允许与移动终端直接连接的目标设备时,移动终端向目标设备发起连接,并与目标设备之间建立通信连接。例如,移动终端可以直接向目标设备发起建立蓝牙或者WiFi的请求,或者也可以将该请求发送给车辆,由车辆转发给目标设备,目标设备基于接收到的该请求后与移动终端之间建立直接的通信连接。
在步骤S123中,在移动终端与目标设备之间的通信连接建立后,向目标设备发送固件包,用于目标设备根据该固件包进行固件升级。
示例地,移动终端与目标设备建立通信连接后,将所缓存的第二固件版本的固件包发送给目标设备,目标设备使用该固件包完成固件包的升级安装,并将升级结果反馈至移动终端和/或车辆;在升级成功后,移动终端可以删除固件包;升级失败时,提示用户是否重试,用户根据自己需求选择继续重试或者结束本次升级。
可选的,上述步骤S12所述的根据固件包对目标设备进行固件升级,还可以包括:
在目标设备不允许与移动终端直接连接的情况下,移动终端将固件包发送给车辆,以通过该车辆将固件包发送给目标设备,其中固件包用于目标设备根据固件包进行固件升级。目标设备使用该固件包完成固件包的升级安装,并将升级结果反馈至移动终端和/或车辆;在升级成功后,车辆可以删除固件包,移动终端可以在将固件包发送给车辆后删除固件包,或者也可以在升级成功后删除固件包;升级失败时,可以通过车辆的车机提示用户是否重试,用户根据自己需求选择继续重试或者结束本次升级。
图6是根据一示例性实施例示出的另一种固件升级方法的流程图,应用于移动终端,如图6所示,在车辆处于行驶状态时,上述步骤S121的确认目标设备是否允许与移动终端直接连接,可以包括以下步骤:
在步骤S1211中,确认目标设备是否允许在行驶状态下升级。
在步骤S1212中,在目标设备不允许在行驶状态下升级时,将固件包发送给车辆,以通过该车辆在进入驻车状态时将固件包发送给目标设备,用于目标设备根据固件包进行固件升级。
在步骤S1213中,在目标设备允许在行驶状态下升级时,确认目标设备是否允许与移动终端直接连接。
示例地,由车辆或移动终端根据目标设备的设备类型,或者固件版本的配置文件中的是否允许行驶状态下升级的字段,确认目标设备是否允许在行驶状态下升级,或者基于用于在车辆或移动终端上的操作确认目标设备是否允许在行驶状态下升级。
在目标设备不允许在行驶状态下升级时,移动终端将固件包发送给车辆,在车辆处于驻车状态时,车辆提示用户目标设备有待更新的版本,可选地,可以提示更新所需要的时长,由用户决定是否更新,在用户选择更新时,车辆将固件包发送给目标设备,目标设备利用固件包完成固件包的升级安装,将升级结果反馈至移动终端和/或车辆,并且可选地,在进行固件升级时可以禁止用户行驶车辆;在升级成功后,车辆可以删除固件包,移动终端可以在将固件包发送给车辆后删除固件包,或者也可以在升级成功后删除固件包;升级失败时,可以通过车辆的车机提示用户是否重试,用户根据自己需求选择继续重试或者结束本次升级。
其中,在目标设备允许在行驶状态下升级时,移动终端可以根据目标设备是否允许与其直接连接,来选择把固件包发送给车辆,还是把固件包直接发送给目标设备。关于移动终端是否允许与其直接连接的实施方式已经在前文实施例中进行了说明,不再赘述。
图7是根据一示例性实施例示出的又一种固件升级方法的流程图,如图7所示,一种固件升级方法,应用于车辆中,包括以下步骤:
在步骤S21中,获取目标设备的当前的第一固件版本,目标设备是与车辆建立了通信连接的设备,第一固件版本用于确定服务器中是否存在比第一固件版本新的第二固件版本。
在步骤S22中,在服务器中存在比第一固件版本新的第二固件版本,且移动终端从服务器中获取第二固件版本的固件包时,与移动终端通过固件包对目标设备进行固件升级。
上述步骤S21至S22中的方法,已经在前文进行了介绍,具体可以参照步骤S11至S12所述的方法,不再赘述。
在一种实施方式中,可以由移动终端从服务器查询固件版本,与移动终端通过固件包对目标设备进行升级,图8是根据一示例性实施例示出的另一种固件升级方法的流程图,应用于车辆,如图8所示,上述步骤S22所述的在服务器中存在比第一固件版本新的第二固件版本,且移动终端从服务器中获取第二固件版本的固件包时,与移动终端通过固件包对目标设备进行固件升级,可以包括以下步骤:
在步骤S221中,向移动终端发送第一固件版本;第一固件版本用于移动终端根据该第一固件版本在服务器中查询是否存在比该第一固件版本新的第二固件版本,并在确认存在第二固件版本的情况下,从服务器下载固件包。
上述步骤S221中的方法,已经在前文进行了介绍,具体可以参照步骤S111至S112所述的方法,不再赘述。
在步骤S222中,与移动终端通过固件包对目标设备进行固件升级。
示例地,车辆启动后与移动终端建立通信连接,车辆与移动端利用固件包对目标设备进行固件升级的方法,可以参照前文图5实施例所述的方法,不再赘述。
在另一种实现方式中,可以由车辆从服务器查询固件版本,与移动终端通过固件包对目标设备进行升级,图9是根据一示例性实施例示出的另一种固件升级方法的流程图,应用于车辆,如图9所示,上述步骤S22所述的在服务器中存在比第一固件版本新的第二固件版本,且移动终端从服务器中获取第二固件版本的固件包时,与移动终端通过固件包对目标设备进行固件升级,可以包括以下步骤:
在步骤S223中,向服务器发送查询请求,查询请求用于向服务器请求查询目标设备的最新固件版本。
在步骤S224中,接收服务器响应于查询请求所反馈的第二固件版本。
在步骤S225中,在第二固件版本是比第一固件版本新的任一版本的情况下,向移动终端发送第二固件版本;第二固件版本用于移动终端根据第二固件版本,从服务器下载第二固件版本的固件包。
上述步骤S223-S225中的方法,已经在前文进行了介绍,具体可以参照步骤S113至S114所述的方法,不再赘述。
可选的,确认目标设备是否允许与移动终端直接连接的方法,已经在前文进行了介绍,具体可以参照步骤S121至S123所述的方法,不再赘述。以及,在车辆处于行驶状态时的升级方法,已经在前文进行了介绍,具体可以参照步骤S1211至S1213所述的方法,不再赘述。
通过上述方案,在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,移动终端从服务器中获取第二固件版本的固件包,并利用该固件包完成对目标设备的固件升级;实现了通过移动终端从服务器获取新版本的固件包并对目标设备进行固件升级,由于无需使用车机网络下载固件包,因此能够避免因车辆无网络或者网络不佳、车辆网络受流量限制等情况下,无法完成目标设备的固件升级的问题。
图10是根据一示例性实施例示出的又一种固件升级方法的流程图,在该方法中,以移动终端来下载用于升级的固件包为例对本公开提供的固件升级方法进行说明,本实施例中以目标设备为任一智能设备,以服务器为OTA服务器为例,如图10所示,该方法可以包括:
在步骤S31中,车辆从智能设备获取智能设备的设备类型和第一固件版本。
其中,车辆与智能设备的通信方法以及设备类型和第一固件版本的具体内容,可以参照步骤S11中的内容,不再赘述。
在步骤S32中,移动终端从车辆获取的智能设备的设备类型和第一固件版本。
在步骤S33中,智能设备向OTA服务器发送新版本查询请求。
在步骤S34中,OTA服务器向移动终端反馈第二固件版本,该第二固件版本是比第一固件版本新的版本。
在步骤S35中,移动终端从OTA服务器中下载第二固件版本的固件包。
可选地,该固件包中可以包括配置文件,关于配置文件已经在前文进行了介绍,不再赘述。步骤S33至S35所述的方法,可以参照图3实施例的内容,不再赘述。
在步骤S36中,判断智能设备是否允许与移动终端直接连接。
其中,是否允许与移动终端直接连接的确认方法,可以参照步骤S121所述的内容,不再赘述。
在步骤S37中,判断智能设备是否允许行驶中升级。
其中,上述的步骤S36至S37可以不限制执行顺序,可以先执行其中的一者,也可以同时执行。
其中,在智能设备允许行驶中升级,且智能设备与移动终端可以直接连接的情况下执行步骤S38。在智能设备不允许行驶中升级,或者智能设备允许行驶中升级,但智能设备不能与移动终端直接连接的情况下,待车辆处于驻车状态时执行步骤S39、S310。
在步骤S38中,移动终端向智能设备发送固件包。
在步骤S39中,移动终端向车辆发送固件包。
在步骤S310中,车辆向智能设备发送固件包。
在步骤S311中,智能设备使用固件包进行升级。
在步骤S312中,智能设备向移动终端和/或车辆反馈固件升级结果。
其中,步骤S37至S312所述的方法可以参照图6实施例所述的内容,不再赘述。
通过上述方案,在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,移动终端从服务器中获取第二固件版本的固件包,并利用该固件包完成对目标设备的固件升级;实现了通过移动终端从服务器获取新版本的固件包并对目标设备进行固件升级,由于无需使用车机网络下载固件包,因此能够避免因车辆无网络或者网络不佳、车辆网络受流量限制等情况下,无法完成目标设备的固件升级的问题。
图11是根据一示例性实施例示出的又一种固件升级方法的流程图,在该方法中,可以通过自适应策略来决定是移动终端还是车辆来下载用于升级的固件包,本实施例中以目标设备为任一智能设备,以服务器为OTA服务器为例,如图11所示,该方法可以包括:
在步骤S41中,车辆从智能设备获取设备类型和第一固件版本。
其中,车辆与智能设备的通信方法以及设备类型和第一固件版本的具体内容,可以步骤S11中的内容,不再赘述。
在步骤S42中,车辆向OTA服务器发送新版本查询请求。
在步骤S43中,OTA服务器向车辆反馈第二固件版本,该第二固件版本是比第一固件版本新的版本。
在步骤S44中,车辆判断到达目的地前能否完成固件包下载。
在步骤S45中,到达目的地前不能完成固件包下载时,车辆向移动终端发送第二固件版本。
在步骤S46中,移动终端从OTA服务器下载第二固件版本的固件包,及其配置文件。
其中,步骤S42至S46所述的方法,可以参照图9实施例的内容,不再赘述。
在步骤S47中,判断智能设备是否允许与移动终端直接连接。
其中,是否允许与移动终端直接连接,可以参照步骤S121所述的内容,不再赘述。
在步骤S48中,判断智能设备是否允许行驶中升级。
其中,上述的步骤S47至S48不限制执行顺序,可以先执行其中的一者,也可以同时执行。
其中,在智能设备允许行驶中升级,且智能设备与移动终端可以直接连接的情况下执行步骤S49。在智能设备不允许行驶中升级或者智能设备允许行驶中升级,但智能设备不能与移动终端直接连接的情况下,待车辆处于驻车状态的时下执行步骤S410、S411。
在步骤S49中,移动终端向智能设备发送固件包。
在步骤S410中,移动终端向车辆发送固件包。
在步骤S411中,车辆向智能设备发送固件包。
在步骤S412中,智能设备使用固件包进行升级。
在步骤S413中,智能设备向移动终端或车辆反馈固件升级结果。
其中,步骤S48至S413所述的方法可以参照图6实施例所述的内容,不再赘述。
通过上述方案,在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,移动终端从服务器中获取第二固件版本的固件包,并利用该固件包完成对目标设备的固件升级;实现了通过移动终端从服务器获取新版本的固件包并对目标设备进行固件升级,由于无需使用车机网络下载固件包,因此能够避免因车辆无网络或者网络不佳、车辆网络受流量限制等情况下,无法完成目标设备的固件升级的问题。
图12是根据一示例性实施例示出的一种固件升级装置框图。参照图12,应用于移动终端,该固件升级装置1200包括:获取模块1210、执行模块1220。
该获取模块1210,被配置为在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,从服务器获取第二固件版本的固件包,目标设备是与车辆建立了通信连接的设备。
该执行模块1220,被配置为根据该固件包对目标设备进行固件升级。
可选地,该获取模块1210,包括:第一获取子模块和第二获取子模块;
第一获取子模块,被配置为从车辆获取目标设备当前的第一固件版本;
第二获取子模块,被配置为在服务器中查询到存在比第一固件版本新的第二固件版本时,从服务器获取第二固件版本的固件包。
可选地,该第二获取子模块,被配置为:
向服务器发送查询请求,查询请求用于向服务器请求查询目标设备的最新固件版本;
接收服务器响应于查询请求所反馈的第二固件版本;
在第二固件版本是比第一固件版本新的任一版本的情况下,从服务器下载第二固件版本的固件包。
可选地,该获取模块1210,包括接收子模块和下载子模块;
接收子模块,被配置为接收车辆发送的第二固件版本,第二固件版本是车辆从服务器查询到的比第一固件版本新的任一版本;
下载子模块,被配置为根据第二固件版本,从服务器下载第二固件版本的固件包。
可选地,该接收子模块,被配置为:在车辆为行驶状态,且车辆在根据剩余行驶时间以及车机网络状态确定车辆无法完成固件包下载的情况下,接收车辆发送的第二固件版本。
可选地,该执行模块1220,包括:确认子模块、连接子模块和发送子模块;
确认子模块,被配置为确认目标设备是否允许与移动终端直接连接;
连接子模块,被配置为在目标设备允许与移动终端直接连接的情况下,建立该移动终端与该目标设备之间的通信连接,或者通过车辆建立移动终端与目标设备之间的通信连接;
发送子模块,被配置为在移动终端与目标设备之间的通信连接建立后,向目标设备发送固件包,用于目标设备根据固件包进行固件升级。
可选地,该发送子模块,还被配置为:在目标设备不允许与移动终端直接连接的情况下,将固件包发送给车辆,以通过车辆将固件包发送给目标设备,用于目标设备根据固件包进行固件升级。
可选地,该确认子模块,被配置为:
确认目标设备是否允许在行驶状态下升级;
在目标设备不允许在行驶状态下升级时,将固件包发送给车辆,以通过车辆在进入驻车状态时将固件包发送给目标设备,用于目标设备根据固件包进行固件升级;
在目标设备允许在行驶状态下升级时,确认目标设备是否允许与移动终端直接连接。
图13是根据一示例性实施例示出的又一种固件升级装置框图。参照图13,应用于车辆,该固件升级装置1300包括:获取模块1310、执行模块1320。
该获取模块1310,被配置为获取目标设备的当前的第一固件版本,目标设备是与车辆建立了通信连接的设备,第一固件版本用于确定服务器中是否存在比第一固件版本新的第二固件版本。
该执行模块1320,被配置为在服务器中存在比第一固件版本新的第二固件版本,且移动终端从服务器中获取第二固件版本的固件包时,与移动终端通过固件包对目标设备进行固件升级。
可选地,该执行模块1320,被配置为:
向移动终端发送第一固件版本;第一固件版本用于移动终端根据第一固件版本在服务器中查询是否存在比第一固件版本新的第二固件版本,并在确认存在第二固件版本的情况下,从服务器下载固件包;
与移动终端通过固件包对目标设备进行固件升级。
可选地,该执行模块1320,包括查询子模块、第一接收子模块和第一发送子模块;
该查询子模块,被配置为向服务器发送查询请求,查询请求用于向服务器请求查询目标设备的最新固件版本。
该第一接收子模块,被配置为接收服务器响应于查询请求所反馈的第二固件版本。
该第一发送子模块,被配置为在第二固件版本是比第一固件版本新的任一版本的情况下,向移动终端发送第二固件版本;第二固件版本用于移动终端根据第二固件版本,从服务器下载第二固件版本的固件包。
可选地,该第一发送子模块,被配置为:
在车辆为行驶状态,根据剩余行驶时间以及车机网络状态确定车辆是否能够完成固件包下载;
在车辆无法完成固件包下载的情况下,向移动终端发送第二固件版本。
可选地,该执行模块1320,包括确认子模块、连接子模块;
该确认子模块,被配置为确认目标设备是否允许与移动终端直接连接。
该连接子模块,被配置为在目标设备允许与移动终端直接连接的情况下,建立移动终端与目标设备之间的通信连接,通信连接用于移动终端向目标设备发送固件包,固件包用于目标设备根据固件包进行固件升级。
可选地,该执行模块1320,还包括第二接收子模块、第二发送子模块,该第二接收子模块,被配置为在目标设备不允许与移动终端直接连接的情况下,接收移动终端发送的固件包。
该第二发送子模块,被配置为将固件包发送给目标设备,用于目标设备根据固件包进行固件升级。
可选地,该确认子模块,被配置为:
确认目标设备是否允许在行驶状态下升级;
在目标设备不允许在行驶状态下升级时,接收移动终端发送的固件包;
在车辆在进入驻车状态时,将固件包发送给目标设备,用于目标设备根据固件包进行固件升级;
在目标设备允许在行驶状态下升级时,确认目标设备是否允许与移动终端直接连接。
通过上述方案,在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,移动终端从服务器中获取第二固件版本的固件包,并利用该固件包完成对目标设备的固件升级;实现了通过移动终端从服务器获取新版本的固件包并对目标设备进行固件升级,由于无需使用车机网络下载固件包,因此能够避免因车辆无网络或者网络不佳、车辆网络受流量限制等情况下,无法完成目标设备的固件升级的问题。
图14是根据一示例性实施例示出的一种固件升级系统的结构图,本公开实施例还提供一种固件升级系统,如图14所示,该系统包括:移动终端01、服务器02、车辆03和目标设备04,其中该目标设备04是与该车辆03建立了通信连接的设备,该目标设备可以为一个或多个(如图14所示的目标设备1-n);该服务器02可以是OTA服务器。
该车辆03用于获取目标设备04的当前的第一固件版本,并将该第一固件版本发送至移动终端01;
该移动终端01用于在服务器02中查询是否存在比该第一固件版本新的第二固件版本,并在该服务器02中存在比该第一固件版本新的第二固件版本时从该服务器02中获取该第二固件版本的固件包;
该移动终端01还用于根据该固件包对该目标设备04进行固件升级。
其中,移动终端01、服务器02、车辆03和目标设备04所执行的具体方法可以参照前文实施例所示的固件升级方法,不再赘述。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本公开还提供一种计算机可读存储介质,其上存储有计算机程序指令,该程序指令被处理器执行时实现本公开提供的固件升级方法的步骤。
图15是根据一示例性实施例示出的一种电子设备1500的功能框图示意图。例如,电子设备1500可以是上述的移动终端,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等,电子设备1500也可以是上文所述的移动终端,还可以是车辆的车机。参照图15,电子设备1500可以包括以下一个或多个组件:处理组件1502,存储器1504,电源组件1506,多媒体组件1508,音频组件1510,输入/输出接口1512,传感器组件1514,以及通信组件1516。
处理组件1502通常控制电子设备1500的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件1502可以包括一个或多个处理器1520来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件1502可以包括一个或多个模块,便于处理组件1502和其他组件之间的交互。例如,处理组件1502可以包括多媒体模块,以方便多媒体组件1508和处理组件1502之间的交互。
存储器1504被配置为存储各种类型的数据以支持在电子设备1500的操作。这些数据的示例包括用于在电子设备1500上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器1504可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件1506为电子设备1500的各种组件提供电力。电源组件1506可以包括电源管理系统,一个或多个电源,及其他与为电子设备1500生成、管理和分配电力相关联的组件。
多媒体组件1508包括在所述电子设备1500和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件1508包括一个前置摄像头和/或后置摄像头。当电子设备1500处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件1510被配置为输出和/或输入音频信号。例如,音频组件1510包括一个麦克风(MIC),当电子设备1500处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器1504或经由通信组件1516发送。在一些实施例中,音频组件1510还包括一个扬声器,用于输出音频信号。
输入/输出接口1512为处理组件1502和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件1514包括一个或多个传感器,用于为电子设备1500提供各个方面的状态评估。例如,传感器组件1514可以检测到电子设备1500的打开/关闭状态,组件的相对定位,例如所述组件为电子设备1500的显示器和小键盘,传感器组件1514还可以检测电子设备1500或电子设备1500一个组件的位置改变,用户与电子设备1500接触的存在或不存在,电子设备1500方位或加速/减速和电子设备1500的温度变化。传感器组件1514可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件1514还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件1514还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件1516被配置为便于电子设备1500和其他设备之间有线或无线方式的通信。电子设备1500可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件1516经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件1516还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备1500可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器1504,上述指令可由电子设备1500的处理器1520执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
上述装置除了可以是独立的电子设备外,也可是独立电子设备的一部分,例如在一种实施例中,该装置可以是集成电路(Integrated Circuit,IC)或芯片,其中该集成电路可以是一个IC,也可以是多个IC的集合;该芯片可以包括但不限于以下种类:GPU(GraphicsProcessing Unit,图形处理器)、CPU(Central Processing Unit,中央处理器)、FPGA(Field Programmable Gate Array,可编程逻辑阵列)、DSP(Digital Signal Processor,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、SOC(System on Chip,SoC,片上系统或系统级芯片)等。上述的集成电路或芯片中可以用于执行可执行指令(或代码),以实现上述的固件升级方法。其中该可执行指令可以存储在该集成电路或芯片中,也可以从其他的装置或设备获取,例如该集成电路或芯片中包括处理器、存储器,以及用于与其他的装置通信的接口。该可执行指令可以存储于该存储器中,当该可执行指令被处理器执行时实现上述的固件升级方法;或者,该集成电路或芯片可以通过该接口接收可执行指令并传输给该处理器执行,以实现上述的固件升级方法。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的固件升级方法的代码部分。
图16是根据一示例性实施例示出的一种车辆1600的功能框图示意图。例如,车辆1600可以是混合动力车辆,也可以是非混合动力车辆、电动车辆、燃料电池车辆或者其他类型的车辆。车辆1600可以是自动驾驶车辆、半自动驾驶车辆或者非自动驾驶车辆。
参照图16,车辆1600可包括各种子系统,例如,信息娱乐系统1610、感知系统1620、决策控制系统1630、驱动系统1640以及计算平台1650。其中,车辆1600还可以包括更多或更少的子系统,并且每个子系统都可包括多个部件。另外,车辆1600的每个子系统之间和每个部件之间可以通过有线或者无线的方式实现互连。
在一些实施例中,信息娱乐系统1610可以包括通信系统,娱乐系统以及导航系统等。
感知系统1620可以包括若干种传感器,用于感测车辆1600周边的环境的信息。例如,感知系统1620可包括全球定位系统(全球定位系统可以是GPS系统,也可以是北斗系统或者其他定位系统)、惯性测量单元(inertial measurement unit,IMU)、激光雷达、毫米波雷达、超声雷达以及摄像装置。
决策控制系统1630可以包括计算系统、整车控制器、转向系统、油门以及制动系统。
驱动系统1640可以包括为车辆1600提供动力运动的组件。在一个实施例中,驱动系统1640可以包括引擎、能量源、传动系统和车轮。引擎可以是内燃机、电动机、空气压缩引擎中的一种或者多种的组合。引擎能够将能量源提供的能量转换成机械能量。
车辆1600的部分或所有功能受计算平台1650控制。计算平台1650可包括至少一个处理器1651和存储器1652,处理器1651可以执行存储在存储器1652中的指令1653。
处理器1651可以是任何常规的处理器,诸如商业可获得的CPU。处理器还可以包括诸如图像处理器(Graphic Process Unit,GPU),现场可编程门阵列(Field ProgrammableGate Array,FPGA)、片上系统(System on Chip,SOC)、专用集成芯片(ApplicationSpecific Integrated Circuit,ASIC)或它们的组合。
存储器1652可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
除了指令1653以外,存储器1652还可存储数据,例如道路地图,路线信息,车辆的位置、方向、速度等数据。存储器1652存储的数据可以被计算平台1650使用。
在本公开实施例中,处理器1651可以执行指令1653,以完成上述的固件升级方法的全部或部分步骤。
图17是根据一示例性实施例示出的一种服务器1700的功能框图示意图。例如,服务器1700可以为上述的OTA服务器,即可以作为用于运行上述的存储固件包的服务器。参照图17,服务器1700包括处理组件1722,其进一步包括一个或多个处理器,以及由存储器1732所代表的存储器资源,用于存储可由处理组件1722的执行的指令,例如应用程序。存储器1732中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1722被配置为执行指令,以执行上述车载网络接入方法。
服务器1700还可以包括一个电源组件1726被配置为执行服务器1700的电源管理,一个有线或无线网络接口1750被配置为将服务器1700连接到网络,和一个输入/输出接口1758。服务器1700可以操作基于存储在存储器1732的操作系统。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的固件升级方法的代码部分。
本领域技术人员在考虑说明书及实践本公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (18)
1.一种固件升级方法,其特征在于,应用于移动终端,所述方法包括:
在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,从所述服务器获取所述第二固件版本的固件包,所述目标设备是与车辆建立了通信连接的设备;
根据所述固件包对所述目标设备进行固件升级。
2.根据权利要求1所述的方法,其特征在于,所述在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,从所述服务器获取所述第二固件版本的固件包,包括:
从所述车辆获取所述第一固件版本;
在所述服务器中查询到存在比所述第一固件版本新的所述第二固件版本时,从所述服务器获取所述第二固件版本的固件包。
3.根据权利要求2所述的方法,其特征在于,所述在所述服务器中查询到存在比所述第一固件版本新的所述第二固件版本时,从所述服务器获取所述第二固件版本的固件包,包括:
向所述服务器发送查询请求,所述查询请求用于向所述服务器请求查询所述目标设备的最新固件版本;
接收所述服务器响应于所述查询请求所反馈的所述第二固件版本;
在所述第二固件版本是比所述第一固件版本新的任一版本的情况下,从所述服务器下载所述第二固件版本的固件包。
4.根据权利要求1所述的方法,其特征在于,所述在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,从所述服务器获取所述第二固件版本的固件包,包括:
接收所述车辆发送的第二固件版本,所述第二固件版本是所述车辆从所述服务器查询到的比所述第一固件版本新的任一版本;
根据所述第二固件版本,从所述服务器下载所述第二固件版本的固件包。
5.根据权利要求4所述的方法,其特征在于,所述接收所述车辆发送的第二固件版本,包括:
在所述车辆为行驶状态,且所述车辆在根据剩余行驶时间以及车机网络状态确定所述车辆无法完成所述固件包下载的情况下,接收所述车辆发送的第二固件版本。
6.根据权利要求1所述的方法,其特征在于,所述根据所述固件包对所述目标设备进行固件升级,包括:
确认所述目标设备是否允许与所述移动终端直接连接;
在所述目标设备允许与所述移动终端直接连接的情况下,建立所述移动终端与所述目标设备之间的通信连接,或者通过所述车辆建立所述移动终端与所述目标设备之间的通信连接;
在所述移动终端与所述目标设备之间的通信连接建立后,向所述目标设备发送所述固件包,用于所述目标设备根据所述固件包进行固件升级。
7.根据权利要求6所述的方法,其特征在于,所述根据所述固件包对所述目标设备进行固件升级,还包括:
在所述目标设备不允许与所述移动终端直接连接的情况下,将所述固件包发送给所述车辆,以通过所述车辆将所述固件包发送给所述目标设备,用于所述目标设备根据所述固件包进行固件升级。
8.根据权利要求6所述的方法,其特征在于,在所述车辆处于行驶状态时,所述确认所述目标设备是否允许与所述移动终端直接连接,包括:
确认所述目标设备是否允许在行驶状态下升级;
在所述目标设备不允许在所述行驶状态下升级时,将所述固件包发送给所述车辆,以通过所述车辆在进入驻车状态时将所述固件包发送给所述目标设备,用于所述目标设备根据所述固件包进行固件升级;
在所述目标设备允许在所述行驶状态下升级时,确认所述目标设备是否允许与所述移动终端直接连接。
9.一种固件升级方法,其特征在于,应用于车辆,所述方法包括:
获取目标设备的当前的第一固件版本,所述目标设备是与所述车辆建立了通信连接的设备,所述第一固件版本用于确定服务器中是否存在比所述第一固件版本新的第二固件版本;
在所述服务器中存在比所述第一固件版本新的第二固件版本,且所述移动终端从所述服务器中获取所述第二固件版本的固件包时,与所述移动终端通过所述固件包对所述目标设备进行固件升级。
10.根据权利要求9所述的方法,其特征在于,所述在所述服务器中存在比所述第一固件版本新的第二固件版本,且所述移动终端从所述服务器中获取所述第二固件版本的固件包时,与所述移动终端通过所述固件包对所述目标设备进行固件升级,包括:
向所述移动终端发送所述第一固件版本;所述第一固件版本用于所述移动终端根据所述第一固件版本在所述服务器中查询是否存在比所述第一固件版本新的第二固件版本,并在确认存在所述第二固件版本的情况下,从所述服务器下载所述固件包;
与所述移动终端通过所述固件包对所述目标设备进行固件升级。
11.根据权利要求9所述的方法,其特征在于,所述在所述服务器中存在比所述第一固件版本新的第二固件版本,且所述移动终端从所述服务器中获取所述第二固件版本的固件包时,与所述移动终端通过所述固件包对所述目标设备进行固件升级,包括:
向所述服务器发送查询请求,所述查询请求用于向所述服务器请求查询所述目标设备的最新固件版本;
接收所述服务器响应于所述查询请求所反馈的所述第二固件版本;
在所述第二固件版本是比所述第一固件版本新的任一版本的情况下,向所述移动终端发送所述第二固件版本;所述第二固件版本用于所述移动终端根据所述第二固件版本,从所述服务器下载所述第二固件版本的所述固件包。
12.根据权利要求11所述的方法,其特征在于,所述向所述移动终端发送所述第二固件版本,包括:
在所述车辆为行驶状态,根据剩余行驶时间以及车机网络状态确定所述车辆是否能够完成所述固件包下载;
在所述车辆无法完成所述固件包下载的情况下,向所述移动终端发送所述第二固件版本。
13.根据权利要求9所述的方法,其特征在于,所述与所述移动终端通过所述固件包对所述目标设备进行固件升级,包括:
确认所述目标设备是否允许与所述移动终端直接连接;
在所述目标设备允许与所述移动终端直接连接的情况下,建立所述移动终端与所述目标设备之间的通信连接,所述通信连接用于所述移动终端向所述目标设备发送所述固件包,所述固件包用于所述目标设备根据所述固件包进行固件升级。
14.根据权利要求13所述的方法,其特征在于,所述与所述移动终端通过所述固件包对所述目标设备进行固件升级,还包括:
在所述目标设备不允许与所述移动终端直接连接的情况下,接收所述移动终端发送的所述固件包;
将所述固件包发送给所述目标设备,用于所述目标设备根据所述固件包进行固件升级。
15.根据权利要求13所述的方法,其特征在于,在所述车辆处于行驶状态时,所述确认所述目标设备是否允许与所述移动终端直接连接,包括:
确认所述目标设备是否允许在行驶状态下升级;
在所述目标设备不允许在所述行驶状态下升级时,接收所述移动终端发送的所述固件包;
在所述车辆在进入驻车状态时,将所述固件包发送给所述目标设备,用于所述目标设备根据所述固件包进行固件升级;
在所述目标设备允许在所述行驶状态下升级时,确认所述目标设备是否允许与所述移动终端直接连接。
16.一种固件升级装置,其特征在于,应用于移动终端,所述装置包括:
获取模块,被配置为在确定服务器中存在比目标设备当前的第一固件版本新的第二固件版本时,从所述服务器获取所述第二固件版本的固件包,所述目标设备是与车辆建立了通信连接的设备;
执行模块,被配置为根据所述固件包对所述目标设备进行固件升级。
17.一种固件升级装置,其特征在于,应用于车辆,所述装置包括:
获取模块,被配置为获取目标设备的当前的第一固件版本,所述目标设备是与所述车辆建立了通信连接的设备,所述第一固件版本用于确定服务器中是否存在比所述第一固件版本新的第二固件版本;
执行模块,被配置为在所述服务器中存在比所述第一固件版本新的第二固件版本,且所述移动终端从所述服务器中获取所述第二固件版本的固件包时,与所述移动终端通过所述固件包对所述目标设备进行固件升级。
18.一种固件升级系统,其特征在于,所述系统包括:移动终端、服务器、车辆和目标设备,所述目标设备是与所述车辆建立了通信连接的设备;
所述车辆用于获取所述目标设备的当前的第一固件版本,并将所述第一固件版本发送至所述移动终端;
所述移动终端用于在服务器中查询是否存在比所述第一固件版本新的第二固件版本,并在所述服务器中存在比所述第一固件版本新的第二固件版本时从所述服务器中获取所述第二固件版本的固件包;
所述移动终端还用于根据所述固件包对所述目标设备进行固件升级。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311126381.3A CN117931223A (zh) | 2023-09-01 | 2023-09-01 | 固件升级方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311126381.3A CN117931223A (zh) | 2023-09-01 | 2023-09-01 | 固件升级方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117931223A true CN117931223A (zh) | 2024-04-26 |
Family
ID=90763509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311126381.3A Pending CN117931223A (zh) | 2023-09-01 | 2023-09-01 | 固件升级方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117931223A (zh) |
-
2023
- 2023-09-01 CN CN202311126381.3A patent/CN117931223A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10791494B2 (en) | Vehicle-to-vehicle communication apparatus of vehicle and method for controlling the same | |
EP3584714B1 (en) | Information providing system and method thereof | |
CN111683349B (zh) | 车载设备、信息处理方法和计算机可读记录介质 | |
US20070296543A1 (en) | Information providing apparatus and method | |
US11340891B2 (en) | Control device, control method, and computer program | |
CN103917849B (zh) | 车辆导航装置 | |
US11492004B2 (en) | Automated driving system, portable device and travel control device | |
CN116506830A (zh) | 数字车钥匙的控制方法、装置、系统及存储介质 | |
US11985267B2 (en) | Electronic device linking system, control device, and method | |
CN113076077B (zh) | 安装车载程序的方法、装置和设备 | |
CN116520886A (zh) | 车辆无人机跟随方法、系统、装置、电子设备及存储介质 | |
CN117931223A (zh) | 固件升级方法、装置及系统 | |
CN106485335B (zh) | 服务预约处理方法和装置 | |
CN115225755A (zh) | 移动终端投屏车载终端的方法、系统、存储介质和终端 | |
CN116193387B (zh) | 车载单元数据的处理方法、装置、存储介质及电子设备 | |
CN115938407A (zh) | 播放控制方法、装置、设备、用户终端和存储介质 | |
CN116546069B (zh) | 车辆控制方法、装置、车辆、适配器、终端及介质 | |
CN116709101A (zh) | 耳机与车载显示屏连接切换方法、装置、设备及介质 | |
CN116884119B (zh) | fob钥匙的配对方法、装置、存储介质及系统 | |
CN116546502B (zh) | 中继攻击的检测方法、装置及存储介质 | |
CN117939444A (zh) | 蓝牙连接的控制方法、装置、车辆、终端和介质 | |
CN117768851A (zh) | 车辆位置的确定方法、装置、终端、车辆及存储介质 | |
CN117831529A (zh) | 显示控制方法、装置、车辆、终端及存储介质 | |
CN114090907A (zh) | 基于充电桩的数据共享方法、装置及设备 | |
CN116193387A (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 |