System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请实施例涉及通信,具体涉及一种设备升级方法、装置及计算机可读存储介质。
技术介绍
1、随着物联网的快速发展,如蓝牙设备等智能设备的相关产品呈现多元化,而鉴于蓝牙设备在低功耗方面的优越表现,使得蓝牙设备在物联网领域中使用十分广泛。在蓝牙设备使用过程中,可以对蓝牙设备进行程序升级。
2、现有蓝牙设备程序升级方式主要是:蓝牙设备通过内置蓝牙与智能手机、平板电脑等建立连接,然后对蓝牙设备中的程序进行空中升级(over the air updates,ota)。然而,本申请专利技术人在实际应用过程中发现,现有蓝牙设备程序升级方式存在由于丢包率高导致重传率高,进而导致升级速度慢的问题。
技术实现思路
1、本申请实施例提供一种设备升级方法、装置、计算机设备及计算机可读存储介质,能够避免因丢包率高而导致的重传率高的问题,在一定程度上提高了待升级设备的升级速率。
2、第一方面,本申请实施例提供一种设备升级方法,所述方法包括:
3、获取待升级设备的升级文件;
4、获取向所述待升级设备传输所述升级文件时的传输单包数据量;
5、获取所述待升级设备对预设测试文件的最大接收数据包量;
6、基于所述最大接收数据包量,确定向所述待升级设备传输所述升级文件时的传输单片数据包量;
7、基于所述传输单包数据量和所述传输单片数据包量,向所述待升级设备发送所述升级文件,以对所述待升级设备进行升级。
8、第二方面,本申请实施例
9、第一获取单元,用于获取待升级设备的升级文件;
10、第二获取单元,用于获取向所述待升级设备传输所述升级文件时的传输单包数据量;
11、所述第二获取单元,还用于获取所述待升级设备对预设测试文件的最大接收数据包量;
12、所述第二获取单元,还用于基于所述最大接收数据包量,确定向所述待升级设备传输所述升级文件时的传输单片数据包量;
13、升级单元,用于基于所述传输单包数据量和所述传输单片数据包量,向所述待升级设备发送所述升级文件,以对所述待升级设备进行升级。
14、在本申请的一些实施例中,所述第二获取单元具体用于:
15、基于预设的测试单包数据量,向所述待升级设备发送预设测试文件;
16、获取所述待升级设备基于所述预设测试文件反馈的最大接收数据包量。
17、在本申请的一些实施例中,所述第二获取单元具体用于:
18、基于所述测试单包数据量,将所述预设测试文件进行分包,得到包含编号顺序的多个测试数据包;
19、按照所述多个测试数据包中各测试数据包的编号顺序,将所述多个测试数据包依次发送给所述待升级设备。
20、在本申请的一些实施例中,所述第二获取单元具体用于:
21、获取所述待升级设备基于所述多个测试数据包反馈的数据包编号;
22、根据所述数据包编号确定所述最大接收数据包量。
23、在本申请的一些实施例中,所述第二获取单元具体用于:
24、基于所述最大接收数据包量和所述测试单包数据量,确定所述待升级设备的缓冲区大小;
25、根据所述缓冲区大小和所述传输单包数据量,确定向所述待升级设备传输所述升级文件时的传输单片数据包量。
26、在本申请的一些实施例中,所述升级单元具体用于:
27、基于所述传输单包数据量对所述升级文件进行切包,得到所述升级文件的多个升级数据包;
28、基于所述传输单片数据包量对所述多个升级数据包进行切片,得到所述升级文件的多个升级数据片;
29、获取所述待升级设备的升级连接间隔;
30、基于所述升级连接间隔将所述多个升级数据片依次发送至所述待升级设备,以对所述待升级设备进行升级。
31、在本申请的一些实施例中,所述升级单元具体用于:
32、查询所述待升级设备的当前连接间隔;
33、若所述当前连接间隔大于预设蓝牙连接间隔阈值,则向所述待升级设备发送连接间隔变更请求,以使得所述待升级设备对所述当前连接间隔进行调整;
34、将所述待升级设备调整后的连接间隔作为所述升级连接间隔。
35、在本申请的一些实施例中,所述第二获取单元具体用于:
36、查询所述待升级设备的最大传输单元;
37、获取所述升级文件的头数据大小;
38、基于所述最大传输单元和所述头数据大小,确定向所述待升级设备传输所述升级文件时的传输单包数据量。
39、第三方面,本申请实施例还提供一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时执行本申请实施例提供的任一种设备升级方法中的步骤。
40、第四方面,本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行所述的设备升级方法中的步骤。
41、第五方面,本申请实施例还提供一种计算机程序产品,包括计算机程序或指令,所述计算机程序或指令被处理器执行时实现本专利技术实施例所提供的任一种设备升级方法中的步骤。
42、从以上内容可得出,本申请实施例具有以下的有益效果:
43、本申请实施例中,第一方面,由于最大接收数据包量可以在一定程度上反映了待升级设备的缓冲区大小,因此,通过获取待升级设备对预设测试文件的最大接收数据包量;基于最大接收数据包量,确定向待升级设备传输升级文件时的传输单片数据包量,按照传输单片数据包量发送升级文件,可以避免传输单片数据包量所占用的缓冲区大小大于待升级设备的缓冲区大小,从而避免向待升级设备发送升级文件时传输的数据包会溢出待升级设备的缓冲区问题,进而避免待升级设备升级时的丢包率、进而解决因丢包率高而导致的重传率高的问题,进而实现降低待升级设备升级时的重传率,由此在一定程度上提高了待升级设备的升级速率。第二方面,由于可以根据最大接收数据包量,确定向待升级设备传输升级文件时的传输单片数据包量,避免了同一升级文件在不同的设备之间采用同一升级参数(即相同的单片数据包量、单包数据量),从而避免同一升级参数在一些设备升级传输数据时不会导致丢包、在一些设备升级传输数据时会导致丢包问题,从而避免同一升级文件采用同一升级参数在不同设备上升级速度差异较大的问题。第三方面,由于可以针对不同的待升级设备确定不同的传输单包数据量、传输单片数据包量进行数据传输,避免升级时传输的数据包会溢出待升级设备的缓冲区问题,从而可以充分利用待升级设备的固有硬件特性来降低丢包率,进而降低重传率、提高设备的升级速率,因此传输速率的提升无需依赖待升级设备的硬件性能提升,降低了待升级设备的硬件成本。
本文档来自技高网...【技术保护点】
1.一种设备升级方法,其特征在于,所述方法包括:
2.根据权利要求1所述的设备升级方法,其特征在于,所述获取所述待升级设备对预设测试文件的最大接收数据包量,包括:
3.根据权利要求2所述的设备升级方法,其特征在于,所述基于预设的测试单包数据量,向所述待升级设备发送预设测试文件,包括:
4.根据权利要求3所述的设备升级方法,其特征在于,所述获取所述待升级设备基于所述预设测试文件反馈的最大接收数据包量,包括:
5.根据权利要求2所述的设备升级方法,其特征在于,所述基于所述最大接收数据包量,确定向所述待升级设备传输所述升级文件时的传输单片数据包量,包括:
6.根据权利要求1所述的设备升级方法,其特征在于,所述基于所述传输单包数据量和所述传输单片数据包量,向所述待升级设备发送所述升级文件,以对所述待升级设备进行升级,包括:
7.根据权利要求6所述的设备升级方法,其特征在于,所述获取所述待升级设备的升级连接间隔,包括:
8.根据权利要求1所述的设备升级方法,其特征在于,所述获取向所述待升级设备传输所述升级文
9.一种设备升级装置,其特征在于,所述设备升级装置包括:
10.一种计算机设备,其特征在于,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现如权利要求1-8任一项所述的设备升级方法。
11.一种计算机可读存储介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1-8任一项所述设备升级方法。
12.一种计算机程序产品,包括计算机程序或指令,其特征在于,所述计算机程序或指令被处理器执行时实现如权利要求1至8中任一项所述的设备升级方法。
...【技术特征摘要】
1.一种设备升级方法,其特征在于,所述方法包括:
2.根据权利要求1所述的设备升级方法,其特征在于,所述获取所述待升级设备对预设测试文件的最大接收数据包量,包括:
3.根据权利要求2所述的设备升级方法,其特征在于,所述基于预设的测试单包数据量,向所述待升级设备发送预设测试文件,包括:
4.根据权利要求3所述的设备升级方法,其特征在于,所述获取所述待升级设备基于所述预设测试文件反馈的最大接收数据包量,包括:
5.根据权利要求2所述的设备升级方法,其特征在于,所述基于所述最大接收数据包量,确定向所述待升级设备传输所述升级文件时的传输单片数据包量,包括:
6.根据权利要求1所述的设备升级方法,其特征在于,所述基于所述传输单包数据量和所述传输单片数据包量,向所述待升级设备发送所述升级文件,以对所述待升级设备进行升级,包括:
...【专利技术属性】
技术研发人员:马璐,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。