CN112685058B - 应用程序更新包的预下载方法、相关设备及存储介质 - Google Patents
应用程序更新包的预下载方法、相关设备及存储介质 Download PDFInfo
- Publication number
- CN112685058B CN112685058B CN202011530048.5A CN202011530048A CN112685058B CN 112685058 B CN112685058 B CN 112685058B CN 202011530048 A CN202011530048 A CN 202011530048A CN 112685058 B CN112685058 B CN 112685058B
- Authority
- CN
- China
- Prior art keywords
- update package
- application program
- user
- downloading
- download
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 78
- 230000006399 behavior Effects 0.000 claims description 164
- 238000012549 training Methods 0.000 claims description 64
- 238000010801 machine learning Methods 0.000 claims description 31
- 230000008569 process Effects 0.000 claims description 27
- 238000009434 installation Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000012163 sequencing technique Methods 0.000 claims description 2
- 230000014759 maintenance of location Effects 0.000 abstract description 9
- 238000010586 diagram Methods 0.000 description 13
- 230000000694 effects Effects 0.000 description 7
- 238000004590 computer program Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000002411 adverse Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008713 feedback mechanism Effects 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Landscapes
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开关于应用程序更新包的预下载方法、相关设备及存储介质,该方法包括:获取应用程序更新包的属性信息以及用户在预设历史时间段内的历史行为数据,该历史行为数据包括与用户对终端中第一应用程序的历史使用相关的数据,第一应用程序包括终端中目标业务类型的应用程序;根据用户的历史行为数据和应用程序更新包的属性信息确定应用程序更新包的预下载策略;在预下载策略为第一预下载策略时,创建应用程序更新包的预下载任务,将该预下载任务写入预下载任务队列;在终端的状态满足预设状态条件时,根据预下载任务队列的预下载任务下载应用程序更新包。本公开有利于提高应用程序如游戏APP的日活和用户的留存。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种应用程序更新包的预下载方法、相关设备及存储介质。
背景技术
随着计算机技术的发展,用户可以在终端中安装各种应用程序以满足工作、娱乐需求,例如用户可以在终端中安装多种游戏APP(Application,应用程序)。相关技术中,如果某个游戏APP有更新包,终端需要在进入该游戏后才开始下载游戏更新包,若游戏更新包为普通的资源包即非热更新包,则终端用户需要在游戏界面中等待资源包的下载和解压过程,当下载和解压过程完成后才可以进入游戏;若游戏更新包为热更新包,则终端用户除了需要在游戏界面中等待更新包的下载过程外,还需要等待游戏重启完成后才可以进入游戏。可见,相关技术中对于游戏更新包的下载处理方式不仅需要终端用户等待较长的下载和解压时间,而且影响了终端用户对游戏APP的使用体验,从而对游戏APP的日活和用户的留存产生不利影响。
发明内容
本公开提供一种应用程序更新包的预下载方法、相关设备及存储介质,以至少解决相关技术中游戏更新包的下载处理方式对游戏应用的日活和用户留存的不利影响的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种应用程序更新包的预下载方法,包括:
获取应用程序更新包的属性信息;所述应用程序更新包对应目标业务类型的应用程序,所述属性信息包括数据量和更新方式;
获取用户在预设历史时间段内的历史行为数据;所述历史行为数据包括与所述用户对终端中第一应用程序的历史使用相关的数据;所述第一应用程序包括所述终端中的所述目标业务类型的应用程序;
根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略;
在所述预下载策略为第一预下载策略时,创建所述应用程序更新包的预下载任务,将所述预下载任务写入预下载任务队列;
在所述终端的状态满足预设状态条件时,根据所述预下载任务队列中的预下载任务下载所述应用程序更新包。
在一示例性的实施方式中,所述用户的历史行为数据包括历史等待行为数据,所述历史等待行为数据表征所述用户在所述预设历史时间段内等待所述第一应用程序更新期间的行为相关数据;
所述根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略包括:
根据所述用户的历史等待行为数据,确定所述用户对所述第一应用程序的忍耐度;
根据所述用户对所述第一应用程序的忍耐度和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
在一示例性的实施方式中,所述历史等待行为数据包括切换的其他应用程序的第一数量、由其他应用程序切换回所述第一应用程序的切回次数和在其他应用程序的总停留时长;
所述根据所述用户的历史等待行为数据,确定所述用户对所述第一应用程序的忍耐度包括:
获取所述第一应用程序的更新完成时长;
根据所述总停留时长与所述更新完成时长的比对情况,确定第一比对结果;
计算所述第一数量和所述切回次数的和值;
根据所述和值与预设切换指数的比对情况,确定第二比对结果;
根据所述第一比对结果和所述第二比对结果,确定所述用户对所述第一应用程序的忍耐度。
在一示例性的实施方式中,所述用户的历史行为数据包括所述用户在所述预设历史时间段内针对所述第一应用程序的使用行为数据;
所述根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略包括:
根据所述使用行为数据,确定所述用户对所述第一应用程序的使用习惯特征;
根据所述用户对所述第一应用程序的使用习惯特征,确定所述用户的类别标签;所述类别标签表征所述用户对所述第一应用程序的喜好程度;
根据所述用户的类别标签和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
在一示例性的实施方式中,所述用户的历史行为数据包括历史退出次数,所述历史退出次数表征在所述预设历史时间段内未完成对应用程序更新包下载的情况下退出所述第一应用程序的总次数;
所述根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略包括:
根据所述历史退出次数与预设退出次数阈值的比对情况,确定所述用户的退出行为标签,所述退出行为标签表征所述用户在应用程序更新包更新过程中是否会退出所述第一应用程序;
根据所述用户的退出行为标签和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
在一示例性的实施方式中,所述用户的历史行为数据包括已下载应用程序更新包的使用成功率;
所述根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略包括:
根据所述已下载应用程序更新包的使用成功率和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
在一示例性的实施方式中,所述根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略包括:
基于预下载策略预测模型,对所述用户的历史行为数据和所述应用程序更新包的属性信息进行预下载策略的预测处理,得到所述应用程序更新包对应的预下载策略。
在一示例性的实施方式中,所述方法还包括训练所述预下载策略预测模型的步骤,所述训练所述预下载策略预测模型包括:
获取训练数据和所述训练数据对应的策略标签,所述训练数据包括样本更新包的属性信息和样本用户的历史行为数据;所述策略标签表征所述样本更新包对应的参考预下载策略;
将所述样本更新包的属性信息和样本用户的历史行为数据输入预设机器学习模型,得到所述预设机器学习模型输出的训练标签;
根据所述训练标签与所述策略标签的差异,确定损失值;
根据所述损失值反向调整所述预设机器学习模型的模型参数,直至满足预设训练结束条件;
将训练结束时的模型参数所对应的预设机器学习模型作为所述预下载策略预测模型。
在一示例性的实施方式中,所述在所述预下载策略为第一预下载策略时,创建所述应用程序更新包的预下载任务,将所述预下载任务写入预下载任务队列包括:
在所述预下载策略为第一预下载策略时,根据所述预下载策略确定预下载任务的任务权重;
根据所述任务权重,创建所述应用程序更新包的预下载任务;
将所述预下载任务写入预下载任务队列;
按照任务权重由高至低的顺序对所述预下载任务队列中的预下载任务进行排序。
在一示例性的实施方式中,所述在所述终端的状态满足预设状态条件时,根据所述预下载任务队列中的预下载任务下载所述应用程序更新包包括:
在所述终端的状态满足预设状态条件时,确定所述预下载任务队列中任务权重最高的目标预下载任务;
下载所述目标预下载任务所对应的目标应用程序更新包。
在一示例性的实施方式中,所述下载所述目标预下载任务所对应的目标应用程序更新包包括:
获取所述目标应用程序更新包的更新方式;
若所述更新方式为非热更新,则下载所述目标应用程序更新包,确定所述目标应用程序更新包对应的目标应用程序的存储路径,根据所述存储路径存储解压后的所述目标应用程序更新包;
若所述更新方式为热更新,则下载所述目标应用程序更新包,根据静默安装权限确定当前是否安装所述目标应用程序更新包。
在一示例性的实施方式中,所述根据所述存储路径存储解压后的所述目标应用程序更新包包括:
确定所述存储路径对应的存储空间中的历史应用程序更新包;
判断所述目标应用程序更新包的资源内容是否覆盖所述历史应用程序更新包的资源内容;
在判断的结果为是时,将所述历史应用程序更新包从所述存储空间中删除,并将解压后的所述目标应用程序更新包存入所述存储空间。
在一示例性的实施方式中,所述预设状态条件包括以下至少之一:
所述终端的网络状态为无线网络;
所述终端的剩余电量超过预设电量阈值;
所述终端的剩余存储空间超过所述应用程序更新包的数据量;
所述终端的无线网络占用状态满足预设无线网络占用状态;
所述终端的CPU占用率不超过预设CPU占用率阈值。
根据本公开实施例的第二方面,提供一种应用程序更新包的预下载装置,包括:
第一获取单元,被配置为执行获取应用程序更新包的属性信息;所述应用程序更新包对应目标业务类型的应用程序,所述属性信息包括数据量和更新方式;
第二获取单元,被配置为执行获取用户在预设历史时间段内的历史行为数据;所述历史行为数据包括与所述用户对终端中第一应用程序的历史使用相关的数据;所述第一应用程序包括所述终端中的所述目标业务类型的应用程序;
预下载策略确定单元,被配置为执行根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略;
任务写入单元,被配置为执行在所述预下载策略为第一预下载策略时,创建所述应用程序更新包的预下载任务,将所述预下载任务写入预下载任务队列;
下载单元,被配置为执行在所述终端的状态满足预设状态条件时,根据所述预下载任务队列中的预下载任务下载所述应用程序更新包。
在一示例性的实施方式中,所述用户的历史行为数据包括历史等待行为数据,所述历史等待行为数据表征所述用户在所述预设历史时间段内等待所述第一应用程序更新期间的行为相关数据;
所述预下载策略确定单元包括:
忍耐度确定单元,被配置为执行根据所述用户的历史等待行为数据,确定所述用户对所述第一应用程序的忍耐度;
第一确定子单元,被配置为执行根据所述用户对所述第一应用程序的忍耐度和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
在一示例性的实施方式中,所述历史等待行为数据包括切换的其他应用程序的第一数量、由其他应用程序切换回所述第一应用程序的切回次数和在其他应用程序的总停留时长;
所述忍耐度确定单元包括:
更新完成时长获取单元,被配置为执行获取所述第一应用程序的更新完成时长;
第一比对单元,被配置为执行根据所述总停留时长与所述更新完成时长的比对情况,确定第一比对结果;
计算单元,被配置为执行计算所述第一数量和所述切回次数的和值;
第二比对单元,被配置为执行根据所述和值与预设切换指数的比对情况,确定第二比对结果;
忍耐度确定子单元,被配置为执行根据所述第一比对结果和所述第二比对结果,确定所述用户对所述第一应用程序的忍耐度。
在一示例性的实施方式中,所述用户的历史行为数据包括所述用户在所述预设历史时间段内针对所述第一应用程序的使用行为数据;
所述预下载策略确定单元包括:
习惯特征确定单元,被配置为执行根据所述使用行为数据,确定所述用户对所述第一应用程序的使用习惯特征;
类别标签确定单元,被配置为执行根据所述用户对所述第一应用程序的使用习惯特征,确定所述用户的类别标签;所述类别标签表征所述用户对所述第一应用程序的喜好程度;
第二确定子单元,被配置为执行根据所述用户的类别标签和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
在一示例性的实施方式中,所述用户的历史行为数据包括历史退出次数,所述历史退出次数表征在所述预设历史时间段内未完成对应用程序更新包下载的情况下退出所述第一应用程序的总次数;
所述预下载策略确定单元包括:
退出行为标签确定单元,被配置为执行根据所述历史退出次数与预设退出次数阈值的比对情况,确定所述用户的退出行为标签,所述退出行为标签表征所述用户在应用程序更新包更新过程中是否会退出所述第一应用程序;
第三确定子单元,被配置为执行根据所述用户的退出行为标签和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
在一示例性的实施方式中,所述用户的历史行为数据包括已下载应用程序更新包的使用成功率;
所述预下载策略确定单元包括:
第四确定子单元,被配置为执行根据所述已下载应用程序更新包的使用成功率和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
在一示例性的实施方式中,所述预下载策略确定单元包括:
预测单元,被配置为执行基于预下载策略预测模型,对所述用户的历史行为数据和所述应用程序更新包的属性信息进行预下载策略的预测处理,得到所述应用程序更新包对应的预下载策略。
在一示例性的实施方式中,所述装置还包括被配置为执行训练所述预下载策略预测模型的训练单元,所述训练单元包括:
训练数据获取单元,被配置为执行获取训练数据和所述训练数据对应的策略标签,所述训练数据包括样本更新包的属性信息和样本用户的历史行为数据;所述策略标签表征所述样本更新包对应的参考预下载策略;
输入单元,被配置为执行将所述样本更新包的属性信息和样本用户的历史行为数据输入预设机器学习模型,得到所述预设机器学习模型输出的训练标签;
损失确定单元,被配置为执行根据所述训练标签与所述策略标签的差异,确定损失值;
参数调整单元,被配置为执行根据所述损失值反向调整所述预设机器学习模型的模型参数,直至满足预设训练结束条件;
模型确定单元,被配置为执行将训练结束时的模型参数所对应的预设机器学习模型作为所述预下载策略预测模型。
在一示例性的实施方式中,所述任务写入单元包括:
权重确定单元,被配置为执行在所述预下载策略为第一预下载策略时,根据所述预下载策略确定预下载任务的任务权重;
任务创建单元,被配置为执行根据所述任务权重,创建所述应用程序更新包的预下载任务;
写入子单元,被配置为执行将所述预下载任务写入预下载任务队列;
任务排序单元,被配置为执行按照任务权重由高至低的顺序对所述预下载任务队列中的预下载任务进行排序。
在一示例性的实施方式中,所述下载单元包括:
目标任务确定单元,被配置为执行在所述终端的状态满足预设状态条件时,确定所述预下载任务队列中任务权重最高的目标预下载任务;
下载子单元,被配置为执行下载所述目标预下载任务所对应的目标应用程序更新包。
在一示例性的实施方式中,所述下载子单元包括:
更新方式获取单元,被配置为执行获取所述目标应用程序更新包的更新方式;
第一下载子单元,被配置为执行若所述更新方式为非热更新,则下载所述目标应用程序更新包,确定所述目标应用程序更新包对应的目标应用程序的存储路径,根据所述存储路径存储解压后的所述目标应用程序更新包;
第二下载子单元,被配置为执行若所述更新方式为热更新,则下载所述目标应用程序更新包,根据静默安装权限确定当前是否安装所述目标应用程序更新包。
在一示例性的实施方式中,所述第一下载子单元包括:
存储路径确定单元,被配置为执行确定所述存储路径对应的存储空间中的历史应用程序更新包;
判断单元,被配置为执行判断所述目标应用程序更新包的资源内容是否覆盖所述历史应用程序更新包的资源内容;
存储单元,被配置为执行在判断的结果为是时,将所述历史应用程序更新包从所述存储空间中删除,并将解压后的所述目标应用程序更新包存入所述存储空间。
在一示例性的实施方式中,所述预设状态条件包括以下至少之一:
所述终端的网络状态为无线网络;
所述终端的剩余电量超过预设电量阈值;
所述终端的剩余存储空间超过所述应用程序更新包的数据量;
所述终端的无线网络占用状态满足预设无线网络占用状态;
所述终端的CPU占用率不超过预设CPU占用率阈值。
根据本公开实施例的第三方面,提供一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如上述任一实施方式所述的应用程序更新包的预下载方法。
根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述任一实施方式所述的应用程序更新包的预下载方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行上述任一种实施方式中提供的应用程序更新包的预下载方法;
本公开的实施例提供的技术方案至少带来以下有益效果:
通过根据用户的历史行为数据和应用程序更新包的属性信息,确定应用程序更新包对应的预下载策略,并在该预下载策略为第一预下载策略时创建该应用程序更新包的预下载任务,将该预下载任务写入预下载任务队列,进而在终端的状态满足预设状态条件时,根据该预下载任务队列中的预下载任务下载应用程序更新包,从而在提前将应用程序更新包下载到用户终端的同时提高了预下载的应用程序更新包与终端用户的匹配性中,大大减少了用户进入游戏等应用程序的等待时间,减少用户在等待下载过程中的流失率,提高了终端用户对应用程序的使用体验,有利于提高游戏APP的日活和用户的留存。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种应用程序更新包的预下载方法的应用环境图;
图2是根据一示例性实施例示出的一种应用程序更新包的预下载方法的流程图;
图3a是根据一示例性实施例示出的根据用户的历史行为数据和应用程序更新包的属性信息确定应用程序更新包对应的预下载策略的一种流程示意图;
图3b是根据一示例性实施例示出的根据用户的历史行为数据和应用程序更新包的属性信息确定应用程序更新包对应的预下载策略的另一种流程示意图;
图3c是根据一示例性实施例示出的根据用户的历史行为数据和应用程序更新包的属性信息确定应用程序更新包对应的预下载策略的另一种流程示意图;
图3d是根据一示例性实施例示出的根据用户的历史行为数据和应用程序更新包的属性信息确定应用程序更新包对应的预下载策略的另一种流程示意图;
图4是根据一示例性实施例示出的在预下载策略为第一预下载策略时,创建应用程序更新包的预下载任务并将该预下载任务写入预下载任务队列的一种流程示意图;
图5是根据一示例性实施例示出的下载目标预下载任务所对应的目标应用程序更新包的一种流程示意图;
图6是根据一示例性实施例示出的一种游戏更新包的预下载方法的流程示意图;
图7是根据一示例性实施例示出的一种应用程序更新包的预下载装置的框图;
图8是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
请参阅图1,其所示为根据一示例性实施例示出的一种应用程序更新包的预下载方法的应用环境图,该应用环境可以包括服务器110和多个终端120,该服务器110和多个终端120之间可以通过有线网络或者无线网络连接。
多个终端120可以是智能手机、平板电脑、笔记本电脑、台式计算机等,但并不局限于此。终端120中可以安装有应用程序,该应用程序可以但不限于为游戏应用程序。终端120的用户可以通过预先注册的用户信息登录应用程序,该用户信息可以包括账号和密码。终端120中还可以配置有本公式实施例的应用程序更新包的预下载装置,该应用程序更新包的预下载装置可以第三方应用的形式安装在终端120中,也可以作为终端120的***配置。
服务器110可以是为终端120中的应用程序提供后台服务的服务器,也可以是与应用程序的后台服务器连接通信的其它服务器,可以是一台服务器,也可以是由多台服务器组成的服务器集群。
图2是根据一示例性实施例示出的一种应用程序更新包的预下载方法的流程图,如图2所示,以应用程序更新包的预下载应用于图1所示的终端120中进行说明,包括以下步骤。
在步骤S210中,获取应用程序更新包的属性信息。
其中,应用程序更新包为待下载的应用程序更新包,该应用程序更新包对应目标业务类型的应用程序,应用程序更新包的属性信息包括该应用程序更新包的数据量和更新方式。
目标业务类型可以但不限于为游戏业务,也即该应用程序更新包为游戏应用的更新包(以下简称游戏更新包)。应用程序更新包的更新方式可以包括热更新和非热更新,其中,热更新是指更新包下载后需要重启应用程序才能使用,一般热更新方式对应的应用程序更新包可以简称为热更新包;非热更新是指下载并解压后即可使用,无需重启应用程序,一般非热更新方式对应的应用程序更新包为普通的资源包。
作为一个可能的实施方式,可以在终端设置预下载定时器,当达到定时时间时终端可以获取应用程序更新包的属性信息,从而可以周期性的执行本公开实施例的应用程序更新包的预下载方法。具体的,在达到当前定时时间节点后,终端获取当前预下载周期对应的应用程序更新包的属性信息,也即为上一定时时间节点与当前定时时间节点之间的应用程序更新包的属性信息。可以理解的,当前预下载周期对应的应用程序更新包可以包括一个或者多个,那么获取的应用程序更新包的属性信息对应可以为一个或者多个应用程序更新包的属性信息。
终端可以在达到当前定时时间节点时向服务器发送获取当前预下载周期对应的应用程序更新包的属性信息的请求,由服务器响应于该请求返回当前预下载周期的应用程序更新包的属性信息。当然,服务器也可以向终端推送应用程序更新包的属性信息,终端在接收到后可以将应用程序更新包的属性信息存储在本地的指定存储空间中,在达到当前定时时间节点时,可以从该指定存储空间中提取应用程序更新包的属性信息,并将该指定存储空间清空,从而确保该指定存储空间中存储的始终为当前预下载周期对应的应用程序更新包的属性信息,避免出现重复下载情况。
在步骤S220中,获取用户在预设历史时间段内的历史行为数据。
其中,历史行为数据包括与用户对终端中第一应用程序的历史使用相关的数据,此处的用户为终端对应的用户,该第一应用程序包括该终端中的目标业务类型的应用程序。以目标业务类型为游戏业务为例,第一应用程序为终端中的游戏应用程序,该历史行为数据为在预设历史时间段内终端的用户对终端中各游戏应用程序的历史使用相关的数据。
其中,预设历史时间段可以根据实际需要进行设定,作为一个可能的实施方式,该预设历史时间段可以与执行本公开实施例的应用程序更新包的预下载方法的周期相对应,即该预设历史时间段为上一定时时间节点与当前定时时间节点之间的时间段。
在步骤S230中,根据上述用户的历史行为数据和上述应用程序更新包的属性信息,确定上述应用程序更新包对应的预下载策略。
本公开的实施例中,为了提高预下载策略与用户的匹配性,提高预下载的准确性,用户的历史行为数据可以包括以下至少一个维度:历史等待行为数据、使用行为数据、历史退出次数和已下载应用程序更新包的使用成功率。
下面针对用户的历史行为数据的上述维度分别进行介绍。
历史等待行为数据表征所述用户在所述预设历史时间段内等待所述第一应用程序更新期间的行为相关数据。以游戏应用程序为例,用户在等待游戏更新时的行为例如可以包括切出游戏、进入其他APP,退出游戏等行为。
本公开的实施例考虑到用户在等待游戏更新的时候,在其他应用程序停留的时间较久且未频繁切入游戏,则可以认为用户具有较高的等待忍耐度;若用户在等待游戏更新的时候,在其他应用程序停留的时间较短或者频繁切回游戏,则可以认为用户的等待忍耐度较低,基于用户的上述忍耐度可以确定更为符合用户忍耐性的预下载策略,提高预下载策略与用户的匹配性。
基于此,作为一个可能的实施方式,如图3a所示,上述步骤S230在根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略时可以包括以下步骤:
在步骤S2310中,根据所述用户的历史等待行为数据,确定所述用户对所述第一应用程序的忍耐度。
示例性的,用户的历史等待行为数据可以包括在等待游戏应用更新时切换的其他应用程序的第一数量,由其他应用程序切换回游戏应用的切回次数,以及在其他应用程序的总停留时间。
其中,其他应用程序是指等待更新的游戏应用之外的应用程序,比如等待更新的游戏应用为A,则其他应用程序为除游戏应用A之外的用户在等待更新期间所切换进入的应用程序,包括用户由游戏应用A直接切换进入的其他游戏应用或者非游戏应用,以及由切换后的游戏应用或者非游戏应用再次切换进入的应用程序。
基于此,在根据用户的历史等待行为数据确定用户对第一应用程序的忍耐度时可以包括以下步骤:
(1)获取第一应用程序的更新完成时长。
示例性的,假设在预设历史时间段内用户有等待游戏应用A的更新,该游戏应用A的更新完成时长为T。
(2)根据总停留时长与更新完成时长的比对情况,确定第一比对结果。
假设在上述游戏应用A的更新过程中,用户切换的其他应用程序的第一数量为K,用户在所切换的每个其他应用程序的停留时间为ti,则在游戏应用A的更新过程中,用户在切换的其他应用程序的总停留时间为则,通过比对总停留时间为/>与游戏应用A的更新完成时长T,可以得到第一比对结果,该第一比对结果可以包括以下两种情形:或者/>
(3)计算所述第一数量和所述切回次数的和值。
假设在上述游戏应用A的更新过程中,用户由游戏应用A切换到了终端中的其他K个应用程序,在浏览该其他K个应用程序的过程中有切换回游戏应用A,且切换回游戏应用A的切回次数为N,则可以计算(K+N)的值得到第一数量与切回次数的和值。
(4)根据所述和值与预设切换指数的比对情况,确定第二比对结果。
其中,预设切换指数表征对等待更新期间忍耐度的要求,其可以为实际应用中的经验值,也可以根据实际需要进行设定。通过比对(K+N)与预设切换指数a可以得到第二比对结果,该第二比对结果可以包括:(K+N)<a,或者(K+N)≥a。
(5)根据所述第一比对结果和所述第二比对结果,确定所述用户对所述第一应用程序的忍耐度。
具体的,忍耐度可以包括多个等级,例如可以是两个等级分别为高等级和低等级,也可以是三个等级分别为高等级、中等级和低等级,还可以根据第一比对结果所对应的差值大小和第二比对结果所对应的差值大小设定忍耐度包括更多个等级。
示例性的,以忍耐度包括高等级和低等级为例,在第一比对结果为总停留时长大于更新完成时长,且第一数量和切回次数的和值小于预设切换指数时,可以认为用户对第一应用程序的忍耐度等级为高等级,此时可以为该用户打上表征高等级的忍耐度等级标签,也即满足且(K+N)<a时,确定该用户对第一应用程序具有高等级的忍耐度。反之,若不满足上述的/>且(K+N)<a,则可以认为用户对第一应用程序的忍耐度等级为低等级,此时可以为该用户打上表征低等级的忍耐度等级标签。/>
示例性的,若忍耐度包括三个等级即还包括中等级,则可以将不满足且(K+N)<a的情况拆分为两种情形:第一种情形为/>且(K+N)≥a,第二种情形为且(K+N)<a,或者/>且(K+N)≥a,可以将第一种情形下的忍耐度确定为低等级忍耐度,将第二种情形下的忍耐度确定为中等级忍耐度,从而可以给用户打上表征相应等级的忍耐度等级标签。
在步骤S2320中,根据所述用户对所述第一应用程序的忍耐度和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
本公开的实施例中,预下载策略可以包括第一预下载策略和第二预下载策略,其中,第一预下载策略表征需要提前下载,第二预下载策略表征不需要提前下载。
具体的,可以综合考虑应用程序更新包的数据量、更新方式以及用户的忍耐度来确定应用程序更新包所对应的预下载策略。一般应用程序更新包的数据量较大如超过某个数据量阈值时,提前对该应用程序更新包进行下载对用户体验的提升更大;由于热更新方式的应用程序更新包在下载完成安装后,很可能需要经历一次重启的过程,因此应用程序更新包的更新方式为热更新时,提前对该应用程序更新包进行下载对用户体验的提升很大。而对于忍耐度较低如低等级或者中等级的忍耐度,提前对该应用程序更新包进行下载更加匹配该用户,也有利于提高应用程序的日活和用户的留存。
基于此,可以根据以下条件来确定应用程序更新包对应的预下载策略:(1)应用程序更新包的数据量超过预设数据量阈值;(2)应用程序更新包的更新方式为热更新;(3)用户的忍耐度为低忍耐度等级。在满足上述三个条件中的一个或者多个时,确定应用程序更新包对应第一预下载策略;在均不满足上述三个条件时,确定应用程序更新包对应第二预下载策略。
示例性的,当满足上述三个条件中的一个或者多个时,还可以根据对条件的满足情况,确定第一预设下载策略对应的任务权重,该任务权重用于确定后续执行预下载任务的优先级。具体的,可以根据满足上述条件的数量来确定第一预设下载策略的任务权重,满足的上述条件越多,第一预设下载策略的任务权重越大,反之满足的上述条件越少,第一预设下载策略的任务权重越小。
使用行为数据表征用户在预设历史时间段内针对第一应用程序的使用行为,包括用户对终端中第一应用程序的使用时间、使用频率。以第一应用程序为游戏应用为例,该使用行为数据可以包括用户对终端中各游戏应用的使用时间、各游戏应用的使用频率等。
基于此,如图3b所示,在根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略时可以包括以下步骤:
在步骤S2330中,根据所述使用行为数据,确定所述用户对所述第一应用程序的使用习惯特征。
其中,使用习惯特征表征用户对第一应用程序的固定使用习惯,例如,用户每天晚上会玩王者荣耀游戏。
在步骤S2340中,根据所述用户对所述第一应用程序的使用习惯特征,确定所述用户的类别标签。
其中,类别标签表征所述用户对所述第一应用程序的喜好程度,以游戏应用为例,类别标签可以包括表征深度玩家的标签和轻度玩家的标签。
在步骤S2350中,根据所述用户的类别标签和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
具体的,可以综合考虑应用程序更新包的数据量、更新方式以及用户的类别标签来确定应用程序更新包所对应的预下载策略。一般应用程序更新包的数据量较大如超过某个数据量阈值时,提前对该应用程序更新包进行下载对用户体验的提升更大;由于热更新方式的应用程序更新包在下载完成安装后,很可能需要经历一次重启的过程,因此应用程序更新包的更新方式为热更新时,提前对该应用程序更新包进行下载对用户体验的提升很大。而对于类别标签,若类别标签表征用户对第一应用程序的喜好程度较高如为游戏的深度玩家,则提前对该应用程序更新包进行下载更加匹配该用户,也有利于提高应用程序的日活和用户的留存。
基于此,可以根据以下条件确定应用程序更新包对应的预下载策略:(1)应用程序更新包的数据量超过预设数据量阈值;(2)应用程序更新包的更新方式为热更新;(3)用户的类别标签表征对第一应用程序的喜好程度较高如为游戏深度玩家标签。在满足上述三个条件中的一个或者多个时,确定应用程序更新包对应第一预下载策略;在均不满足上述三个条件时,确定应用程序更新包对应第二预下载策略。
示例性的,当满足上述三个条件中的一个或者多个时,还可以根据对条件的满足情况,确定第一预设下载策略对应的任务权重,该任务权重用于确定后续执行预下载任务的优先级。具体的,可以根据满足上述条件的数量来确定第一预设下载策略的任务权重,满足的上述条件越多,第一预设下载策略的任务权重越大,反之满足的上述条件越少,第一预设下载策略的任务权重越小。
历史退出次数表征在所述预设历史时间段内未完成对应用程序更新包下载的情况下退出所述第一应用程序的总次数,例如在预设历史时间段内终端涉及到3个游戏应用更新包的下载,其中有2个游戏应用更新包还未下载完成用户即退出了相应的游戏应用,则历史退出次数为2次。
基于此,如图3c所示,在根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略时可以包括以下步骤:
在步骤S2360中,根据所述历史退出次数与预设退出次数阈值的比对情况,确定所述用户的退出行为标签;
其中,所述退出行为标签表征所述用户在应用程序更新包更新过程中是否会退出所述第一应用程序。
预设退出次数阈值可以根据实际经验进行设定,例如可以设定为3次或者5次等等。若历史退出次数超过预设退出次数阈值,则表明用户在应用程序更新包更新过程中退出第一应用程序的概率较高,可以确定退出行为标签为表征会退出的标签;反之,若历史退出次数未超过预设退出次数阈值,则表明用户在应用程序更新包更新过程中退出第一应用程序的概率较低,可以确定退出行为标签为表征不会退出的标签。
在步骤S2370中,根据所述用户的退出行为标签和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
具体的,可以综合考虑应用程序更新包的数据量、更新方式以及用户的退出行为标签来确定应用程序更新包所对应的预下载策略。对于退出行为标签,若退出行为标签表征用户在应用程序更新包更新过程中会退出第一应用程序,则提前对该应用程序更新包进行下载更加匹配该用户,也有利于提高应用程序的日活和用户的留存。
基于此,可以根据以下条件确定应用程序更新包对应的预下载策略:(1)应用程序更新包的数据量超过预设数据量阈值;(2)应用程序更新包的更新方式为热更新;(3)用户的退出行为标签表征用户在应用程序更新包更新过程中会退出第一应用程序。在满足上述三个条件中的一个或者多个时,确定应用程序更新包对应第一预下载策略;在均不满足上述三个条件时,确定应用程序更新包对应第二预下载策略。
示例性的,当满足上述三个条件中的一个或者多个时,还可以根据对条件的满足情况,确定第一预设下载策略对应的任务权重,该任务权重用于确定后续执行预下载任务的优先级。具体的,可以根据满足上述条件的数量来确定第一预设下载策略的任务权重,满足的上述条件越多,第一预设下载策略的任务权重越大,反之满足的上述条件越少,第一预设下载策略的任务权重越小。
本公开的实施例中,为了进一步提高预下载的应用程序更新包的准确性,引入负反馈机制,结合已下载应用程序更新包的使用成功率来确定应用程序更新包的预下载策略,该已下载应用程序更新包的使用成功率=n已使用/n已下载×100%,其中,n已下载表示终端中已经下载的应用程序更新包的数量,n已使用表示已经下载的应用程序更新包中被使用的应用程序更新包的数量。
基于此,如图3d所示,在根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略时可以包括以下步骤:
在步骤S2380中,根据所述已下载应用程序更新包的使用成功率和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
具体的,可以综合考虑应用程序更新包的数据量、更新方式以及已下载应用程序更新包的使用成功率来确定应用程序更新包所对应的预下载策略。对于使用成功率,可以将使用成功率与预设成功率阈值进行比对,若使用成功率未超过预设成功率阈值,则表明之前预下载周期的预下载策略对该用户过于激进,在当前预下载周期可以调整预下载策略为第二预下载策略;若使用成功率超过预设成功率阈值,则提前对该应用程序更新包进行下载更加匹配该用户。
因此,可以根据以下条件确定应用程序更新包对应的预下载策略:(1)应用程序更新包的数据量超过预设数据量阈值;(2)应用程序更新包的更新方式为热更新;(3)使用成功率超过预设成功率阈值。在同时满足上述三个条件时,确定应用程序更新包对应第一预下载策略;在不满足上述条件(3)时,确定应用程序更新包对应第二预下载策略。
本公开的实施例通过将用户层面和应用程序更新包层面相结合,来确定当前预下载周期对应的应用程序更新包的预下载策略,提高了预下载的应用程序更新包的准确性以及与用户的匹配性,有利于提高对用户留存和应用程序的日活。另外,对于用户层面从多个维度来考虑用户的历史行为数据,综合各个维度的历史行为数据可以进一步提高预下载的应用程序更新包的准确性和匹配性。
作为一个可能的实施方式,还可以预先训练好预下载策略预测模型,在步骤S230的实施中可以调用该预下载策略预测模型,基于该预下载策略预测模型对用户的历史行为数据和应用程序更新包的属性信息进行预下载策略的预测处理,从而得到模型输出的应用程序更新包的预下载策略,具体可以包括第一预下载策略或者第二预下载策略。其中,输入至预下载策略预测模型的历史行为数据可以是前述任一维度或者多个维度数据的组合。具体的实施中,预下载策略预测模型输出第一预下载策略时还可以包括第一预下载策略的概率,该概率值可以作为后续创建的预下载任务的任务权重。
基于此,本公开实施例的应用程序更新包的预下载方法还可以包括训练预下载策略预测模型的步骤,具体的实施中,训练预下载策略预测模型可以包括以下步骤:
(1)获取训练数据和所述训练数据对应的策略标签,训练数据包括样本更新包的属性信息和样本用户的历史行为数据,策略标签表征训练数据中样本更新包对应的参考预下载策略。
其中,样本更新包的属性信息包括样本更新包的数据量和更新方式。样本用户的历史行为数据可以包括历史等待行为数据、使用行为数据、历史退出次数和已下载应用程序更新包的使用成功率。参考预下载策略可以包括第一预下载策略和第二预下载策略,例如在参考预下载策略为第一预下载策略时可以使用策略标签1来表征,在参考预下载策略为第二预下载策略时可以使用策略标签0来表征,使用策略标签1或0来还可以表征第一预下载策略的概率。
(2)将所述样本更新包的属性信息和样本用户的历史行为数据输入预设机器学习模型,得到所述预设机器学习模型输出的训练标签。
其中,预设机器学习模型可以是线性回归模型、基于支持向量机(Support VectorMachines,SVM)SVM的机器学习模型、神经网络模型或决策树模型等。通过将样本更新包的属性信息和样本用户的历史行为数据输入预设机器学习模型可以得到输出的训练标签。
(3)根据所述训练标签与所述策略标签的差异,确定损失值。
(4)根据所述损失值反向调整所述预设机器学习模型的模型参数,直至满足预设训练结束条件。
(5)将训练结束时的模型参数所对应的预设机器学习模型作为所述预下载策略预测模型。
具体的,损失值可以通过交叉熵损失函数来表示,在通过交叉熵损失函数对预设机器学习模型的模型参数进行调整时,可以在根据该交叉熵损失函数确定该预设机器学习模型未满足预设训练结束条件时,通过反向传播算法根据交叉熵损失函数确定预设机器学习模型的梯度方向,从预设机器学习模型的输出层逐层向前更新预设机器学习模型的模型参数。
其中,预设训练结束条件可以是指损失值小于预定阈值,或者损失值的变化率趋近于某一个较低值(比如趋近于0)。
在步骤S240中,在上述预下载策略为第一预下载策略时,创建该应用程序更新包的预下载任务,将该预下载任务写入预下载任务队列。
其中,第一预下载策略表征需要提前下载。预下载任务队列在单独的进程中执行,用于统一管理终端中所有的预下载任务。具体的实施中,预下载任务队列采用的数据结构可以是优先级队列PriorityQueue,优先级队列的执行规则是先进先出,也即先写入队列的预下载任务会优先执行。
为了能够及时将需要提前下载的应用程序更新包预下载到终端上以提高用户的体验,作为一个可能的实施方式,上述步骤S240在实施时可以包括如图4中的以下步骤:
在步骤S410中,在所述预下载策略为第一预下载策略时,根据所述预下载策略确定预下载任务的任务权重。
其中,任务权重由前述步骤S230在确定应用程序更新包的预下载策略时确定,即第一预下载策略还包含了该策略对应的任务权重。
在步骤S420中,根据所述任务权重,创建所述应用程序更新包的预下载任务。
在步骤S430中,将所述预下载任务写入预下载任务队列。
在步骤S440中,按照任务权重由高至低的顺序对所述预下载任务队列中的预下载任务进行排列。
具体的,可以将任务权重最高的预下载任务放到预下载任务队列的队首,然后从队首至队尾按照任务权重由高至低的顺序对预下载任务队列中的预下载任务进行排列,从而可以使得任务权重较高的预下载任务获得优先被执行的权利。
在步骤S250中,在终端的状态满足预设状态条件时,根据预下载任务队列中的预下载任务下载应用程序更新包。
本公开的实施例为了防止应用程序更新包的静默下载影响用户的正常使用,在执行预下载任务队列中的预下载任务之前,先判断终端的状态是否满足预设状态条件,若满足预设状态条件则可以表明终端处于空闲状态,在该空闲状态执行预下载任务可以很好的避免应用程序更新包的静默下载对用户正常使用的影响。
其中,预设状态条件包括以下至少之一:
终端的网络状态为无线网络;即终端连接wifi,在无线网络下可以防止耗费用户的流量。
终端的剩余电量超过预设电量阈值;示例性的,预设电量阈值可以根据终端的实际续航能力来设定,例如可以为50%电量。
终端的剩余存储空间超过所述应用程序更新包的数据量;示例性的,剩余存储空间超过应用程序更新包的数据量的两倍以上。
终端的无线网络占用状态满足预设无线网络占用状态;示例性的,该预设无线网络占用状态可以是用户在本地观看本地视频或者本地图书,当无线网络占用状态满足预设无线网络占用状态时该终端处于无线网络占用较低的状态。
终端的CPU占用率不超过预设CPU占用率阈值;当终端的CPU占用率不超过预设CPU占用率阈值时该终端处于CPU或内存占用率较低的状态,其中预设CPU占用率阈值可以根据终端的实际性能来设定,例如可以为50%。
实际应用中,可以直接调用终端操作***如Android***接口读取终端的状态信息,并判断各状态信息是否满足上述的预设状态条件,若均满足预设状态条件,则确定终端的状态满足预设状态条件,反之,若有一个或多个不满足预设状态条件,则确定终端的状态不满足预设状态条件。例如判断终端是否连接wifi,可以通过调用以下函数来实现:
connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).isConnected()。
作为一个可能的实施方式,上述步骤S250在具体实施时,可以在所述终端的状态满足预设状态条件时,确定所述预下载任务队列中任务权重最高的目标预下载任务;然后下载该目标预下载任务所对应的目标应用程序更新包。
示例性的,若预下载任务队列从队首至队尾按照任务权重由高至低的顺序排列各预下载任务,则当终端为空闲状态时,可以直接将预下载任务队列中最靠前即队首的预下载任务作为目标预下载任务提取出并执行,如果终端的状态还满足预设状态条件即终端还处于空闲状态,则可以继续将预下载任务队列中最靠前即队首的预下载任务作为目标预下载任务提取出并执行,如此重复,直至预下载任务队列为空。
本公开的实施例中,为了使得预下载过程能够更加符合用户的需求,作为一个可能的实施方式,如图5所示,在下载所述目标预下载任务所对应的目标应用程序更新包时可以包括以下步骤:
在步骤S510中,获取所述目标应用程序更新包的更新方式。
其中,更新方式可以包括热更新和非热更新,可以根据目标应用程序更新包的内容存在形式确定其更新方式,或者更新方式标识确定其更新方式。若为热更新则目标应用程序更新包为热更新包,此时可以执行步骤S530;若为非热更新则目标应用程序更新包为普通的资源包,此时可以执行步骤S520。
在步骤S520中,下载所述目标应用程序更新包,确定所述目标应用程序更新包对应的目标应用程序的存储路径,根据所述存储路径存储解压后的所述目标应用程序更新包。
具体的,如果目标应用程序更新包为普通的资源包,则在终端空闲状态时可以自动下载该目标应用程序更新包,解压到目标应用程序相应的存储路径目录下,如data/data/PackageName/目录下,目标应用程序启动后可以直接从此目录上加载相应的资源文件即可。
为了尽量减少预下载的应用程序更新包对终端内存的占用,在根据所述存储路径存储解压后的所述目标应用程序更新包时可以包括以下步骤:
(1)确定所述存储路径对应的存储空间中的历史应用程序更新包。
(2)判断所述目标应用程序更新包的资源内容是否覆盖所述历史应用程序更新包的资源内容。
具体的,若判断的结果为目标应用程序更新包的资源内容覆盖前述的历史应用程序更新包的资源内容,则可以执行以下步骤(3)。其中,资源内容可以包括版本号和更新包的内部资源。
(3)将所述历史应用程序更新包从所述存储空间中删除,并将解压后的所述目标应用程序更新包存入所述存储空间。
通过上述方式存储解压后的目标应用程序更新包,可以将终端中之前预下载的资源包删除,只保留最近一次的资源包,避免了对终端内存的浪费。
示例性的,为了进一步减少预下载的资源包对终端内存的浪费,还可以设置预下载的资源包在终端的生效宽限时长,若在该生效宽限时长内资源包一直未被使用,即在该生效宽限时长内用户没有打开过该资源包对应的应用程序,则可以从终端中删除该资源包,从而释放出相应的内存以供存储更为有用的信息。
另外,还可以在检测到终端的某个应用程序被卸载时,将该被卸载的应用程序关联的预下载的资源包删除,进一步释放终端的内存。使得本公开实施例的预下载方法在提高用户对应用程序体验效果的同时最大限度的减少对终端内存的占用,确保终端的运行性能。
在步骤S530中,下载所述目标应用程序更新包,根据静默安装权限确定当前是否安装所述目标应用程序更新包。
其中,静默安装权限由终端的用户预先设定,若终端的用户授予静默安装权限,则在下载目标热更新包后可以自动静默安装该热更新包,并可以直接进入目标应用程序。若终端的用户未授予静默安装权限,则在下次进入目标应用程序如某个游戏应用后安装该热更新包,并重启该目标应用程序。
本公开的实施例在提前将应用程序更新包下载到用户终端的同时提高了预下载的应用程序更新包与终端用户的匹配性中,大大减少了用户进入游戏等应用程序的等待时间,减少用户在等待下载过程中的流失率,提高了终端用户对应用程序的使用体验,有利于提高游戏APP的日活和用户的留存。
下面以目标业务类型为游戏业务为例来介绍本公开实施例的技术方案。图6是根据一示例性实施例示出的游戏更新包的预下载方法的流程示意图,如图6所示,该方法可以包括:
在步骤S610中,获取待下载的游戏更新包的属性信息,以及用户在预设历史时间段内的历史行为数据。
其中,游戏更新包的属性信息包括游戏更新包的大小和更新方式。用户的历史行为数据包括与用户对终端中游戏应用的历史使用相关的数据,具体的,历史行为数据可以包括历史等待行为数据,游戏应用使用行为数据,历史退出次数和已下载游戏更新包的使用成功率。
在步骤S620中,基于上述游戏更新包的属性信息和用户的历史行为数据确定是否需要提前下载该游戏更新包,若是,则执行步骤S630至步骤S640,否则继续执行步骤S610。
在步骤S630中,创建该待下载的游戏更新包对应的预下载任务,将该预下载任务放入预下载任务队列中。
在步骤S640中,判断终端的状态是否处于空闲状态,若是,则执行步骤S650;否则继续判断终端的状态。
在步骤S650中,循环从预下载任务队列中提取目标预下载任务执行。
在步骤S660中,判断目标预下载任务执行对应的游戏更新包是资源包还是热更新包,若是资源包则执行步骤S670;若是热更新包则执行步骤S680至步骤S690。
在步骤S670中,下载资源包并解压到特定目录,后续可以直接进入该资源包对应的游戏。
在步骤S680中,下载热更新包。
在步骤S690中,判断是否允许自动安装,若允许则执行步骤S6110;反之则不自动安装,待下次进入游戏后,再安装该热更新包,并重启该游戏。
在步骤S6110中,静默安装该热更新包,后续可直接进入该热更新包对应的游戏。
需要说明的是,上述图6中各步骤的实施细节可以参照本公开实施例的前述相关内容,在此不再赘述。
图7是根据一示例性实施例示出的一种应用程序更新包的预下载装置的框图。参照图7,该装置包括第一获取单元710,第二获取单元720,预下载策略确定单元730,任务写入单元740和下载单元750。
该第一获取单元710,被配置为执行获取应用程序更新包的属性信息;所述应用程序更新包对应目标业务类型的应用程序,所述属性信息包括数据量和更新方式;
该第二获取单元720,被配置为执行获取用户在预设历史时间段内的历史行为数据;所述历史行为数据包括与所述用户对终端中第一应用程序的历史使用相关的数据;所述第一应用程序包括所述终端中的所述目标业务类型的应用程序;
该预下载策略确定单元730,被配置为执行根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略;
该任务写入单元740,被配置为执行在所述预下载策略为第一预下载策略时,创建所述应用程序更新包的预下载任务,将所述预下载任务写入预下载任务队列;
该下载单元750,被配置为执行在所述终端的状态满足预设状态条件时,根据所述预下载任务队列中的预下载任务下载所述应用程序更新包。
在一示例性的实施方式中,所述用户的历史行为数据包括历史等待行为数据,所述历史等待行为数据表征所述用户在所述预设历史时间段内等待所述第一应用程序更新期间的行为相关数据;
所述预下载策略确定单元730包括:
忍耐度确定单元,被配置为执行根据所述用户的历史等待行为数据,确定所述用户对所述第一应用程序的忍耐度;
第一确定子单元,被配置为执行根据所述用户对所述第一应用程序的忍耐度和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
在一示例性的实施方式中,所述历史等待行为数据包括切换的其他应用程序的第一数量、由其他应用程序切换回所述第一应用程序的切回次数和在其他应用程序的总停留时长;
所述忍耐度确定单元包括:
更新完成时长获取单元,被配置为执行获取所述第一应用程序的更新完成时长;
第一比对单元,被配置为执行根据所述总停留时长与所述更新完成时长的比对情况,确定第一比对结果;
计算单元,被配置为执行计算所述第一数量和所述切回次数的和值;
第二比对单元,被配置为执行根据所述和值与预设切换指数的比对情况,确定第二比对结果;
忍耐度确定子单元,被配置为执行根据所述第一比对结果和所述第二比对结果,确定所述用户对所述第一应用程序的忍耐度。
在一示例性的实施方式中,所述用户的历史行为数据包括所述用户在所述预设历史时间段内针对所述第一应用程序的使用行为数据;
所述预下载策略确定单元730包括:
习惯特征确定单元,被配置为执行根据所述使用行为数据,确定所述用户对所述第一应用程序的使用习惯特征;
类别标签确定单元,被配置为执行根据所述用户对所述第一应用程序的使用习惯特征,确定所述用户的类别标签;所述类别标签表征所述用户对所述第一应用程序的喜好程度;
第二确定子单元,被配置为执行根据所述用户的类别标签和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
在一示例性的实施方式中,所述用户的历史行为数据包括历史退出次数,所述历史退出次数表征在所述预设历史时间段内未完成对应用程序更新包下载的情况下退出所述第一应用程序的总次数;
所述预下载策略确定单元730包括:
退出行为标签确定单元,被配置为执行根据所述历史退出次数与预设退出次数阈值的比对情况,确定所述用户的退出行为标签,所述退出行为标签表征所述用户在应用程序更新包更新过程中是否会退出所述第一应用程序;
第三确定子单元,被配置为执行根据所述用户的退出行为标签和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
在一示例性的实施方式中,所述用户的历史行为数据包括已下载应用程序更新包的使用成功率;
所述预下载策略确定单元730包括:
第四确定子单元,被配置为执行根据所述已下载应用程序更新包的使用成功率和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
在一示例性的实施方式中,所述预下载策略确定单元730包括:
预测单元,被配置为执行基于预下载策略预测模型,对所述用户的历史行为数据和所述应用程序更新包的属性信息进行预下载策略的预测处理,得到所述应用程序更新包对应的预下载策略。
在一示例性的实施方式中,所述装置还包括被配置为执行训练所述预下载策略预测模型的训练单元,所述训练单元包括:
训练数据获取单元,被配置为执行获取训练数据和所述训练数据对应的策略标签,所述训练数据包括样本更新包的属性信息和样本用户的历史行为数据;所述策略标签表征所述样本更新包对应的参考预下载策略;
输入单元,被配置为执行将所述样本更新包的属性信息和样本用户的历史行为数据输入预设机器学习模型,得到所述预设机器学习模型输出的训练标签;
损失确定单元,被配置为执行根据所述训练标签与所述策略标签的差异,确定损失值;
参数调整单元,被配置为执行根据所述损失值反向调整所述预设机器学习模型的模型参数,直至满足预设训练结束条件;
模型确定单元,被配置为执行将训练结束时的模型参数所对应的预设机器学习模型作为所述预下载策略预测模型。
在一示例性的实施方式中,所述任务写入单元740包括:
权重确定单元,被配置为执行在所述预下载策略为第一预下载策略时,根据所述预下载策略确定预下载任务的任务权重;
任务创建单元,被配置为执行根据所述任务权重,创建所述应用程序更新包的预下载任务;
写入子单元,被配置为执行将所述预下载任务写入预下载任务队列;
任务排序单元,被配置为执行按照任务权重由高至低的顺序对所述预下载任务队列中的预下载任务进行排序。
在一示例性的实施方式中,所述下载单元750包括:
目标任务确定单元,被配置为执行在所述终端的状态满足预设状态条件时,确定所述预下载任务队列中任务权重最高的目标预下载任务;
下载子单元,被配置为执行下载所述目标预下载任务所对应的目标应用程序更新包。
在一示例性的实施方式中,所述下载子单元包括:
更新方式获取单元,被配置为执行获取所述目标应用程序更新包的更新方式;
第一下载子单元,被配置为执行若所述更新方式为非热更新,则下载所述目标应用程序更新包,确定所述目标应用程序更新包对应的目标应用程序的存储路径,根据所述存储路径存储解压后的所述目标应用程序更新包;
第二下载子单元,被配置为执行若所述更新方式为热更新,则下载所述目标应用程序更新包,根据静默安装权限确定当前是否安装所述目标应用程序更新包。
在一示例性的实施方式中,所述第一下载子单元包括:
存储路径确定单元,被配置为执行确定所述存储路径对应的存储空间中的历史应用程序更新包;
判断单元,被配置为执行判断所述目标应用程序更新包的资源内容是否覆盖所述历史应用程序更新包的资源内容;
存储单元,被配置为执行在判断的结果为是时,将所述历史应用程序更新包从所述存储空间中删除,并将解压后的所述目标应用程序更新包存入所述存储空间。
在一示例性的实施方式中,所述预设状态条件包括以下至少之一:
所述终端的网络状态为无线网络;
所述终端的剩余电量超过预设电量阈值;
所述终端的剩余存储空间超过所述应用程序更新包的数据量;
所述终端的无线网络占用状态满足预设无线网络占用状态;
所述终端的CPU占用率不超过预设CPU占用率阈值。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
在示例性实施例中,还提供了一种电子设备,包括处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行存储器上所存放的指令时,实现上述实施例中任一应用程序更新包的预下载方法的步骤。
该电子设备可以是终端、服务器或者类似的运算装置,图8是根据一示例性实施例示出的一种用于应用程序更新包的预下载的电子设备的框图,如图8所示,该电子设备的内部结构可包括但不限于:处理器、网络接口及存储器。其中,电子设备内的处理器、网络接口及存储器可通过总线或其他方式连接,在本说明书实施例所示图8中以通过总线连接为例。
其中,处理器(或称CPU(Central Processing Unit,中央处理器))是电子设备的计算核心以及控制核心。网络接口可选的可以包括标准的有线接口、无线接口(如WI-FI、移动通信接口等)。存储器(Memory)是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器可以是高速RAM存储设备,也可以是非不稳定的存储设备(non-volatile memory),例如至少一个磁盘存储设备;可选的还可以是至少一个位于远离前述处理器的存储装置。存储器提供存储空间,该存储空间存储了电子设备的操作***,可包括但不限于:Windows***(一种操作***),Linux(一种操作***),Android(安卓,一种移动操作***)***、IOS(一种移动操作***)***等等,本发明对此并不作限定;并且,在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。在本说明书实施例中,处理器加载并执行存储器中存放的一条或一条以上指令,以实现上述方法实施例提供的应用程序更新包的预下载方法。
在示例性实施例中,还提供了一种存储介质,当存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述实施例中任一应用程序更新包的预下载方法的步骤。
在示例性实施例中,还提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行上述任一种实施方式中提供的应用程序更新包的预下载方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (26)
1.一种应用程序更新包的预下载方法,其特征在于,包括:
获取应用程序更新包的属性信息;所述应用程序更新包对应目标业务类型的应用程序,所述属性信息包括数据量和更新方式;
获取用户在预设历史时间段内的历史行为数据;所述历史行为数据包括与所述用户对终端中第一应用程序的历史使用相关的数据;所述第一应用程序包括所述终端中的所述目标业务类型的应用程序;
根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略;
在所述预下载策略为第一预下载策略时,创建所述应用程序更新包的预下载任务,将所述预下载任务写入预下载任务队列;
在所述终端的状态满足预设状态条件时,根据所述预下载任务队列中的预下载任务下载所述应用程序更新包;
其中,所述用户的历史行为数据包括历史等待行为数据,所述历史等待行为数据表征所述用户在所述预设历史时间段内等待所述第一应用程序更新期间的行为相关数据;所述根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略包括:
根据所述用户的历史等待行为数据,确定所述用户对所述第一应用程序的忍耐度;所述历史等待行为数据包括切换的其他应用程序的第一数量、由其他应用程序切换回所述第一应用程序的切回次数和在其他应用程序的总停留时长;
根据所述用户对所述第一应用程序的忍耐度和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
2.根据权利要求1所述的应用程序更新包的预下载方法,其特征在于,所述根据所述用户的历史等待行为数据,确定所述用户对所述第一应用程序的忍耐度包括:
获取所述第一应用程序的更新完成时长;
根据所述总停留时长与所述更新完成时长的比对情况,确定第一比对结果;
计算所述第一数量和所述切回次数的和值;
根据所述和值与预设切换指数的比对情况,确定第二比对结果;
根据所述第一比对结果和所述第二比对结果,确定所述用户对所述第一应用程序的忍耐度。
3.根据权利要求1或2所述的应用程序更新包的预下载方法,其特征在于,所述用户的历史行为数据包括所述用户在所述预设历史时间段内针对所述第一应用程序的使用行为数据;
所述根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略包括:
根据所述使用行为数据,确定所述用户对所述第一应用程序的使用习惯特征;
根据所述用户对所述第一应用程序的使用习惯特征,确定所述用户的类别标签;所述类别标签表征所述用户对所述第一应用程序的喜好程度;
根据所述用户的类别标签和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
4.根据权利要求1~3任一所述的应用程序更新包的预下载方法,其特征在于,所述用户的历史行为数据还包括历史退出次数,所述历史退出次数表征在所述预设历史时间段内未完成对应用程序更新包下载的情况下退出所述第一应用程序的总次数;
所述根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略包括:
根据所述历史退出次数与预设退出次数阈值的比对情况,确定所述用户的退出行为标签,所述退出行为标签表征所述用户在应用程序更新包更新过程中是否会退出所述第一应用程序;
根据所述用户的退出行为标签和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
5.根据权利要求1~4任一所述的应用程序更新包的预下载方法,其特征在于,所述用户的历史行为数据还包括已下载应用程序更新包的使用成功率;
所述根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略包括:
根据所述已下载应用程序更新包的使用成功率和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
6.根据权利要求1所述的应用程序更新包的预下载方法,其特征在于,所述根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略包括:
基于预下载策略预测模型,对所述用户的历史行为数据和所述应用程序更新包的属性信息进行预下载策略的预测处理,得到所述应用程序更新包对应的预下载策略。
7.根据权利要求6所述的应用程序更新包的预下载方法,其特征在于,所述方法还包括训练所述预下载策略预测模型的步骤,所述训练所述预下载策略预测模型包括:
获取训练数据和所述训练数据对应的策略标签,所述训练数据包括样本更新包的属性信息和样本用户的历史行为数据;所述策略标签表征所述样本更新包对应的参考预下载策略;
将所述样本更新包的属性信息和样本用户的历史行为数据输入预设机器学习模型,得到所述预设机器学习模型输出的训练标签;
根据所述训练标签与所述策略标签的差异,确定损失值;
根据所述损失值反向调整所述预设机器学习模型的模型参数,直至满足预设训练结束条件;
将训练结束时的模型参数所对应的预设机器学习模型作为所述预下载策略预测模型。
8.根据权利要求1所述的应用程序更新包的预下载方法,其特征在于,所述在所述预下载策略为第一预下载策略时,创建所述应用程序更新包的预下载任务,将所述预下载任务写入预下载任务队列包括:
在所述预下载策略为第一预下载策略时,根据所述预下载策略确定预下载任务的任务权重;
根据所述任务权重,创建所述应用程序更新包的预下载任务;
将所述预下载任务写入预下载任务队列;
按照任务权重由高至低的顺序对所述预下载任务队列中的预下载任务进行排序。
9.根据权利要求8所述的应用程序更新包的预下载方法,其特征在于,所述在所述终端的状态满足预设状态条件时,根据所述预下载任务队列中的预下载任务下载所述应用程序更新包包括:
在所述终端的状态满足预设状态条件时,确定所述预下载任务队列中任务权重最高的目标预下载任务;
下载所述目标预下载任务所对应的目标应用程序更新包。
10.根据权利要求9所述的应用程序更新包的预下载方法,其特征在于,所述下载所述目标预下载任务所对应的目标应用程序更新包包括:
获取所述目标应用程序更新包的更新方式;
若所述更新方式为非热更新,则下载所述目标应用程序更新包,确定所述目标应用程序更新包对应的目标应用程序的存储路径,根据所述存储路径存储解压后的所述目标应用程序更新包;
若所述更新方式为热更新,则下载所述目标应用程序更新包,根据静默安装权限确定当前是否安装所述目标应用程序更新包。
11.根据权利要求10所述的应用程序更新包的预下载方法,其特征在于,所述根据所述存储路径存储解压后的所述目标应用程序更新包包括:
确定所述存储路径对应的存储空间中的历史应用程序更新包;
判断所述目标应用程序更新包的资源内容是否覆盖所述历史应用程序更新包的资源内容;
在判断的结果为是时,将所述历史应用程序更新包从所述存储空间中删除,并将解压后的所述目标应用程序更新包存入所述存储空间。
12.根据权利要求1所述的应用程序更新包的预下载方法,其特征在于,所述预设状态条件包括以下至少之一:
所述终端的网络状态为无线网络;
所述终端的剩余电量超过预设电量阈值;
所述终端的剩余存储空间超过所述应用程序更新包的数据量;
所述终端的无线网络占用状态满足预设无线网络占用状态;
所述终端的CPU占用率不超过预设CPU占用率阈值。
13.一种应用程序更新包的预下载装置,其特征在于,包括:
第一获取单元,被配置为执行获取应用程序更新包的属性信息;所述应用程序更新包对应目标业务类型的应用程序,所述属性信息包括数据量和更新方式;
第二获取单元,被配置为执行获取用户在预设历史时间段内的历史行为数据;所述历史行为数据包括与所述用户对终端中第一应用程序的历史使用相关的数据;所述第一应用程序包括所述终端中的所述目标业务类型的应用程序;
预下载策略确定单元,被配置为执行根据所述用户的历史行为数据和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略;
任务写入单元,被配置为执行在所述预下载策略为第一预下载策略时,创建所述应用程序更新包的预下载任务,将所述预下载任务写入预下载任务队列;
下载单元,被配置为执行在所述终端的状态满足预设状态条件时,根据所述预下载任务队列中的预下载任务下载所述应用程序更新包;
其中,所述用户的历史行为数据包括历史等待行为数据,所述历史等待行为数据表征所述用户在所述预设历史时间段内等待所述第一应用程序更新期间的行为相关数据;所述预下载策略确定单元包括:
忍耐度确定单元,被配置为执行根据所述用户的历史等待行为数据,确定所述用户对所述第一应用程序的忍耐度;所述历史等待行为数据包括切换的其他应用程序的第一数量、由其他应用程序切换回所述第一应用程序的切回次数和在其他应用程序的总停留时长;
第一确定子单元,被配置为执行根据所述用户对所述第一应用程序的忍耐度和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
14.根据权利要求13所述的应用程序更新包的预下载装置,其特征在于,所述忍耐度确定单元包括:
更新完成时长获取单元,被配置为执行获取所述第一应用程序的更新完成时长;
第一比对单元,被配置为执行根据所述总停留时长与所述更新完成时长的比对情况,确定第一比对结果;
计算单元,被配置为执行计算所述第一数量和所述切回次数的和值;
第二比对单元,被配置为执行根据所述和值与预设切换指数的比对情况,确定第二比对结果;
忍耐度确定子单元,被配置为执行根据所述第一比对结果和所述第二比对结果,确定所述用户对所述第一应用程序的忍耐度。
15.根据权利要求13或14所述的应用程序更新包的预下载装置,其特征在于,所述用户的历史行为数据还包括所述用户在所述预设历史时间段内针对所述第一应用程序的使用行为数据;
所述预下载策略确定单元还包括:
习惯特征确定单元,被配置为执行根据所述使用行为数据,确定所述用户对所述第一应用程序的使用习惯特征;
类别标签确定单元,被配置为执行根据所述用户对所述第一应用程序的使用习惯特征,确定所述用户的类别标签;所述类别标签表征所述用户对所述第一应用程序的喜好程度;
第二确定子单元,被配置为执行根据所述用户的类别标签和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
16.根据权利要求13~15任一所述的应用程序更新包的预下载装置,其特征在于,所述用户的历史行为数据还包括历史退出次数,所述历史退出次数表征在所述预设历史时间段内未完成对应用程序更新包下载的情况下退出所述第一应用程序的总次数;
所述预下载策略确定单元还包括:
退出行为标签确定单元,被配置为执行根据所述历史退出次数与预设退出次数阈值的比对情况,确定所述用户的退出行为标签,所述退出行为标签表征所述用户在应用程序更新包更新过程中是否会退出所述第一应用程序;
第三确定子单元,被配置为执行根据所述用户的退出行为标签和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
17.根据权利要求13~16任一所述的应用程序更新包的预下载装置,其特征在于,所述用户的历史行为数据包括已下载应用程序更新包的使用成功率;
所述预下载策略确定单元包括:
第四确定子单元,被配置为执行根据所述已下载应用程序更新包的使用成功率和所述应用程序更新包的属性信息,确定所述应用程序更新包对应的预下载策略。
18.根据权利要求13所述的应用程序更新包的预下载装置,其特征在于,所述预下载策略确定单元包括:
预测单元,被配置为执行基于预下载策略预测模型,对所述用户的历史行为数据和所述应用程序更新包的属性信息进行预下载策略的预测处理,得到所述应用程序更新包对应的预下载策略。
19.根据权利要求18所述的应用程序更新包的预下载装置,其特征在于,所述装置还包括被配置为执行训练所述预下载策略预测模型的训练单元,所述训练单元包括:
训练数据获取单元,被配置为执行获取训练数据和所述训练数据对应的策略标签,所述训练数据包括样本更新包的属性信息和样本用户的历史行为数据;所述策略标签表征所述样本更新包对应的参考预下载策略;
输入单元,被配置为执行将所述样本更新包的属性信息和样本用户的历史行为数据输入预设机器学习模型,得到所述预设机器学习模型输出的训练标签;
损失确定单元,被配置为执行根据所述训练标签与所述策略标签的差异,确定损失值;
参数调整单元,被配置为执行根据所述损失值反向调整所述预设机器学习模型的模型参数,直至满足预设训练结束条件;
模型确定单元,被配置为执行将训练结束时的模型参数所对应的预设机器学习模型作为所述预下载策略预测模型。
20.根据权利要求13所述的应用程序更新包的预下载装置,其特征在于,所述任务写入单元包括:
权重确定单元,被配置为执行在所述预下载策略为第一预下载策略时,根据所述预下载策略确定预下载任务的任务权重;
任务创建单元,被配置为执行根据所述任务权重,创建所述应用程序更新包的预下载任务;
写入子单元,被配置为执行将所述预下载任务写入预下载任务队列;
任务排序单元,被配置为执行按照任务权重由高至低的顺序对所述预下载任务队列中的预下载任务进行排序。
21.根据权利要求20所述的应用程序更新包的预下载装置,其特征在于,所述下载单元包括:
目标任务确定单元,被配置为执行在所述终端的状态满足预设状态条件时,确定所述预下载任务队列中任务权重最高的目标预下载任务;
下载子单元,被配置为执行下载所述目标预下载任务所对应的目标应用程序更新包。
22.根据权利要求21所述的应用程序更新包的预下载装置,其特征在于,所述下载子单元包括:
更新方式获取单元,被配置为执行获取所述目标应用程序更新包的更新方式;
第一下载子单元,被配置为执行若所述更新方式为非热更新,则下载所述目标应用程序更新包,确定所述目标应用程序更新包对应的目标应用程序的存储路径,根据所述存储路径存储解压后的所述目标应用程序更新包;
第二下载子单元,被配置为执行若所述更新方式为热更新,则下载所述目标应用程序更新包,根据静默安装权限确定当前是否安装所述目标应用程序更新包。
23.根据权利要求22所述的应用程序更新包的预下载装置,其特征在于,所述第一下载子单元包括:
存储路径确定单元,被配置为执行确定所述存储路径对应的存储空间中的历史应用程序更新包;
判断单元,被配置为执行判断所述目标应用程序更新包的资源内容是否覆盖所述历史应用程序更新包的资源内容;
存储单元,被配置为执行在判断的结果为是时,将所述历史应用程序更新包从所述存储空间中删除,并将解压后的所述目标应用程序更新包存入所述存储空间。
24.根据权利要求13所述的应用程序更新包的预下载装置,其特征在于,所述预设状态条件包括以下至少之一:
所述终端的网络状态为无线网络;
所述终端的剩余电量超过预设电量阈值;
所述终端的剩余存储空间超过所述应用程序更新包的数据量;
所述终端的无线网络占用状态满足预设无线网络占用状态;
所述终端的CPU占用率不超过预设CPU占用率阈值。
25.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至12中任一项所述的应用程序更新包的预下载方法。
26.一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至12中任一项所述的应用程序更新包的预下载方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011530048.5A CN112685058B (zh) | 2020-12-22 | 2020-12-22 | 应用程序更新包的预下载方法、相关设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011530048.5A CN112685058B (zh) | 2020-12-22 | 2020-12-22 | 应用程序更新包的预下载方法、相关设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112685058A CN112685058A (zh) | 2021-04-20 |
CN112685058B true CN112685058B (zh) | 2024-06-04 |
Family
ID=75450685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011530048.5A Active CN112685058B (zh) | 2020-12-22 | 2020-12-22 | 应用程序更新包的预下载方法、相关设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112685058B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113176889A (zh) * | 2021-04-28 | 2021-07-27 | 维沃移动通信有限公司 | 程序更新方法、装置和电子设备 |
CN113434061A (zh) * | 2021-06-07 | 2021-09-24 | 深圳市爱都科技有限公司 | 表盘中应用入口实现方法、装置、智能手表及存储介质 |
CN114584553A (zh) * | 2022-02-28 | 2022-06-03 | 掌阅科技股份有限公司 | 书架书籍的自动下载方法、计算设备及存储介质 |
CN117055937A (zh) * | 2023-07-18 | 2023-11-14 | 深圳先锋居善科技有限公司 | 一种应用程序的更新方法、装置、电子设备及存储介质 |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104850434A (zh) * | 2015-04-30 | 2015-08-19 | 腾讯科技(深圳)有限公司 | 多媒体资源下载方法及装置 |
CN106528193A (zh) * | 2015-09-15 | 2017-03-22 | 腾讯科技(深圳)有限公司 | 一种应用更新方法及终端 |
CN106713407A (zh) * | 2016-06-29 | 2017-05-24 | 腾讯科技(深圳)有限公司 | 预下载方法及装置 |
CN108134691A (zh) * | 2017-12-18 | 2018-06-08 | 广东欧珀移动通信有限公司 | 模型构建方法、网络资源预加载方法、装置、介质及终端 |
CN108881332A (zh) * | 2017-05-09 | 2018-11-23 | 北京搜狗科技发展有限公司 | 一种预下载方法和装置 |
CN109002315A (zh) * | 2018-10-31 | 2018-12-14 | Oppo广东移动通信有限公司 | 应用程序更新方法、装置、终端及存储介质 |
CN109413186A (zh) * | 2018-10-31 | 2019-03-01 | Oppo广东移动通信有限公司 | 应用程序更新方法、终端、服务器及*** |
CN109947498A (zh) * | 2017-12-20 | 2019-06-28 | 广东欧珀移动通信有限公司 | 应用程序预加载方法、装置、存储介质及移动终端 |
CN110244963A (zh) * | 2019-05-24 | 2019-09-17 | 深圳市明源云科技有限公司 | 数据更新方法、装置及终端设备 |
CN111182526A (zh) * | 2018-11-12 | 2020-05-19 | 奇酷互联网络科技(深圳)有限公司 | 数据更新方法、移动终端以及计算机存储介质 |
CN111209033A (zh) * | 2020-01-10 | 2020-05-29 | 百度在线网络技术(北京)有限公司 | 小程序包的下载方法及相关设备 |
CN111338672A (zh) * | 2020-02-19 | 2020-06-26 | 上海掌门科技有限公司 | 优化应用程序更新的方法、电子设备和计算机存储介质 |
CN111586126A (zh) * | 2020-04-28 | 2020-08-25 | 百度在线网络技术(北京)有限公司 | 小程序预下载方法、装置、设备及存储介质 |
CN111741053A (zh) * | 2020-04-22 | 2020-10-02 | 百度在线网络技术(北京)有限公司 | 数据预下载方法、装置、服务器、终端及存储介质 |
CN111767069A (zh) * | 2020-06-30 | 2020-10-13 | 北京百度网讯科技有限公司 | 小程序处理方法、服务器、设备及存储介质 |
CN111984357A (zh) * | 2020-08-31 | 2020-11-24 | 平安医疗健康管理股份有限公司 | 基于WebWorker的资源加载方法、装置、设备及存储介质 |
-
2020
- 2020-12-22 CN CN202011530048.5A patent/CN112685058B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104850434A (zh) * | 2015-04-30 | 2015-08-19 | 腾讯科技(深圳)有限公司 | 多媒体资源下载方法及装置 |
CN106528193A (zh) * | 2015-09-15 | 2017-03-22 | 腾讯科技(深圳)有限公司 | 一种应用更新方法及终端 |
CN106713407A (zh) * | 2016-06-29 | 2017-05-24 | 腾讯科技(深圳)有限公司 | 预下载方法及装置 |
CN108881332A (zh) * | 2017-05-09 | 2018-11-23 | 北京搜狗科技发展有限公司 | 一种预下载方法和装置 |
CN108134691A (zh) * | 2017-12-18 | 2018-06-08 | 广东欧珀移动通信有限公司 | 模型构建方法、网络资源预加载方法、装置、介质及终端 |
CN109947498A (zh) * | 2017-12-20 | 2019-06-28 | 广东欧珀移动通信有限公司 | 应用程序预加载方法、装置、存储介质及移动终端 |
CN109002315A (zh) * | 2018-10-31 | 2018-12-14 | Oppo广东移动通信有限公司 | 应用程序更新方法、装置、终端及存储介质 |
CN109413186A (zh) * | 2018-10-31 | 2019-03-01 | Oppo广东移动通信有限公司 | 应用程序更新方法、终端、服务器及*** |
CN111182526A (zh) * | 2018-11-12 | 2020-05-19 | 奇酷互联网络科技(深圳)有限公司 | 数据更新方法、移动终端以及计算机存储介质 |
CN110244963A (zh) * | 2019-05-24 | 2019-09-17 | 深圳市明源云科技有限公司 | 数据更新方法、装置及终端设备 |
CN111209033A (zh) * | 2020-01-10 | 2020-05-29 | 百度在线网络技术(北京)有限公司 | 小程序包的下载方法及相关设备 |
CN111338672A (zh) * | 2020-02-19 | 2020-06-26 | 上海掌门科技有限公司 | 优化应用程序更新的方法、电子设备和计算机存储介质 |
CN111741053A (zh) * | 2020-04-22 | 2020-10-02 | 百度在线网络技术(北京)有限公司 | 数据预下载方法、装置、服务器、终端及存储介质 |
CN111586126A (zh) * | 2020-04-28 | 2020-08-25 | 百度在线网络技术(北京)有限公司 | 小程序预下载方法、装置、设备及存储介质 |
CN111767069A (zh) * | 2020-06-30 | 2020-10-13 | 北京百度网讯科技有限公司 | 小程序处理方法、服务器、设备及存储介质 |
CN111984357A (zh) * | 2020-08-31 | 2020-11-24 | 平安医疗健康管理股份有限公司 | 基于WebWorker的资源加载方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112685058A (zh) | 2021-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112685058B (zh) | 应用程序更新包的预下载方法、相关设备及存储介质 | |
CN105843650B (zh) | 一种智能终端中的应用程序管理方法和装置 | |
US20200154265A1 (en) | Sim card status determination method and sim card status determination device | |
CN106547615B (zh) | 一种后台应用的管理方法及管理模块 | |
US9662567B2 (en) | Optimizing gaming applications accessed by electronic devices | |
TW200422959A (en) | Server processing for updating dataset versions resident on a wireless device | |
CN110060656B (zh) | 模型管理和语音合成方法、装置和***及存储介质 | |
CN110704177B (zh) | 计算任务处理方法、装置、计算机设备和存储介质 | |
CN109492152A (zh) | 推送定制内容的方法、装置、计算机设备及存储介质 | |
CN113076290A (zh) | 文件删除方法、装置、设备、***及存储介质 | |
CN109388552B (zh) | 启动应用程序的时长的确定方法、装置及存储介质 | |
CN114158035A (zh) | 一种ota升级消息的推送方法及装置 | |
CN114237852A (zh) | 一种任务调度方法、装置、服务器及存储介质 | |
CN110784524A (zh) | 一种云手机文件上传保活方法、装置及*** | |
US20220214832A1 (en) | Prefetching metadata in a storage system | |
EP3748493B1 (en) | Method and device for downloading installation-free application | |
CN113961334B (zh) | 一种任务处理方法、装置、设备及存储介质 | |
US20140358847A1 (en) | Method and System for Document Update | |
CN115934354A (zh) | 在线存储方法和装置 | |
CN107678796A (zh) | 一种优化***资源的方法、存储设备及移动终端 | |
CN111125744B (zh) | 代码分支合并方法、***、计算机设备及可读存储介质 | |
CN113746932A (zh) | 网络请求合并方法、装置及电子装置、计算机程序产品 | |
CN111984299A (zh) | 一种数据加载的方法和设备 | |
CN117931378B (zh) | 虚拟机迁移方法及装置 | |
CN107025238B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |