一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

软件更新方法及装置与流程

2021-11-26 22:43:00 来源:中国专利 TAG:


1.本技术实施例涉及云计算领域,尤其涉及一种软件更新方法及装置。


背景技术:

2.云游戏(cloud gaming)是一种以云计算技术为基础的在线游戏技术,其运行于服务端,用户端无需拥有强大的图形运算和数据处理能力,仅需拥有基本的流媒体播放能力、输入指令获取能力、数据传输能力即可服务端将云游戏的游戏画面以及游戏音效通过推流的方式控制用户端播放,使用户参与游戏。
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.图1为本技术实施例提供的云游戏系统10的示例性架构示意图;
37.图2a为本技术实施例提供的软件更新方法100的示例性方法流程示意图;
38.图2b为本技术实施例提供的软件更新方法200的示例性方法流程示意图;
39.图3为本技术实施例提供的一种静态游戏画面的示例性界面示意图;
40.图4为本技术实施例提供的软件更新方法300的示例性信令交互示意图;
41.图5为本技术实施例提供的另一种静态游戏画面的示例性界面示意图;
42.图6为图5示意的静态游戏画面中更新控件的图标的示意图;
43.图7a为本技术实施例提供的一种示例性更新异常的场景界面示意图;
44.图7b为本技术实施例提供的另一种示例性更新异常的场景界面示意图;
45.图8a为本技术实施例提供的软件更新装置80的示例性组成示意图;
46.图8b为本技术实施例提供的软件更新装置81的示例性组成示意图。
47.图9为本技术实施例提供的服务器90的示例性结构示意图。
具体实施方式
48.下面结合本技术实施例中的附图,对本技术实施例的技术方案进行描述。
49.本技术以下实施例中所使用的术语是为了描述特定实施例的目的,而并非旨在作为对本技术技术方案的限制。如在本技术的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括复数表达形式,除非其上下文中明确地有相反指示。还应当理解,尽管在以下实施例中可能采用术语第一、第二等来描述某一类对象,但所述对象不应限于这些术语。这些术语用来将该类对象的具体实现对象进行区分。例如,以下实施例中采用术语第一、第二等来描述指令子集,但指令子集不限于这些术语。这些术语仅用来区分不同操作场景对应的指令子集。以下实施例中可能采用术语第一、第二等来描述的其他类对象同理,此处不再赘述。
50.本技术实施例涉及云计算和云游戏技术领域,公开了一种基于人工智能(artificial intelligence,ai)识别游戏画面中文本语义信息,以及在确定文本语义信息指示更新云游戏软件的场景下,触发相应云游戏软件执行更新流程。
51.下面对本技术实施例涉及的相关技术进行说明。
52.1、ai
53.ai是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
54.ai技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。ai基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。ai软件技术主要包括计算机视觉(computer vision,cv)技术、语音处理(speech technology)技术、自然语言处理(nature language processing,nlp)技术以及机器学习/深度学习等几大方向。
55.本技术技术方案主要涉及nlp技术,nlp技术是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、语义识别、机器翻译、机器人问答等。
56.2、云计算(cloud computing)
57.云计算是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取、按需使用、随时扩展、按使用付费。
58.作为云计算的基础能力提供商,会建立云计算资源池(简称“云平台”),一般称为iaas(infrastructure as a service,基础设施即服务)平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。
59.按照逻辑功能划分,在iaas层上可以部署paas(platform as a service,平台即服务)层,paas层之上再部署saas(software as a service,软件即服务)层,也可以直接将saas部署在iaas上。paas为软件运行的平台,如数据库、web(万维网)容器等。saas为各式各样的业务软件,如web门户网站、短信群发器等。一般来说,saas和paas相对于iaas是上层。
60.3、云游戏(cloud gaming)
61.云游戏(cloud gaming)又可称为游戏点播(gaming on demand),是一种以云计算技术为基础的在线游戏技术。云游戏技术使图形处理与数据运算能力相对有限的轻端设备(thin client)能运行高品质游戏。在云游戏场景下,云游戏软件并不在玩家游戏终端运行,而是在云端服务器中运行。玩家游戏终端无需拥有强大的图形运算与数据处理能力,仅需拥有基本的流媒体播放能力与获取玩家输入指令并发送给云端服务器的能力即可。
62.请参考图1,图1示出了一种示例性云游戏系统10的示意图。该云游戏系统10包括:第一服务器11、至少一个第二服务器12和至少一个终端13。
63.第一服务器11可以是为云游戏软件的运行提供计算资源的平台,用于维护云游戏数据,处理云游戏所有配置、参数相关的逻辑。例如可以为云游戏软件的运行提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(content delivery network,内容分发网络)、以及大数据和人工智能平台等云计算服务。第一服务器11可以维护图1中每个第二服务器12与相应第二服务器中所部署的云游戏软件的对应关系,以便于统筹和管理每个第二服务器12需要的计算资源。第一服务器11还可以用于配置一定量的第二服务器12,预加载其中某个云游戏软件,以配置一定数量的该云游戏软件预加载。例如,配置50个第二服务器12预加载某云游戏软件。第一服务器11可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统。
64.第二服务器12可以是运行云游戏软件的平台。第二服务器12例如可以实现为板卡或者容器。该第二服务器12可以安装及运行一个或多个云游戏软件,在运行任一云游戏软件的过程中,该第二服务器12可以与第一服务器11交互,以从第一服务器11获取计算资源。例如,第二服务器12可以从第一服务器11获得预加载其中一个云游戏软件的配置文件。再如,第二服务器12可以从第一服务器11获得用于指示一个云游戏软件的更新文件等。
65.在运行任一云游戏软件的过程中,该第二服务器12还可以将云游戏软件的音视频流编码,之后,将编码的音视频流发送到终端13,以使终端显示相应云游戏软件的游戏画面。该第二服务器12还可以接收来自于终端13的操作事件,进而,将相应操作事件解码,以实现用户输入的相应操作。
66.终端13可以实现为诸如手机、平板电脑、游戏主机、电子书阅读器、多媒体播放设备、可穿戴设备、pc(personal computer,个人计算机)等电子设备。终端13中安装运行有云游戏app(application,应用程序)的客户端。在接收到针对云游戏app的启动指令后,终端13可以从第二服务器12处获取云游戏相关的音视频流,进而,对音视频流解码,以播放云游戏的画面和声音。另外,终端13在接收到用户的输入指令(包括来自鼠标、键盘和触摸屏等输入设备的输入指令)后,可以对输入指令进行事件编码,然后将编码后的事件发送到第二服务器12,以使第二服务器12对云游戏执行输入指令对应的操作。
67.示例性的,第一服务器11和第二服务器12之间可以通过网络14互相通信。第二服务器12和终端13之间通过网络15互相通信。该网络14和该网络15均可以是有线网络,也可以是无线网络,本技术实施例对此不作限定。
68.可选的,第一服务器11触发第二服务器12预加载一个云游戏软件。相应第二服务器12预加载该云游戏软件。在预加载过程中,第二服务器12可以识别该云游戏软件预加载过程中的游戏画面。在检测到这些游戏画面中包含静态游戏画面后,第二服务器12将静态游戏画面发送到第一服务器11。第一服务器11可以识别该静态游戏画面指示的操作进程,例如更新云游戏软件或者下载最新皮肤等。之后,第一服务器11可以按照识别结果基于网络14与第二服务器12通信,以触发第二服务器12对相应云游戏执行相关操作。
69.本技术实施例涉及的“预加载”是指,在云游戏进入某个游戏场景之前,第二服务器12通过执行虚拟点击或虚拟滑动屏幕等操作,控制云游戏登录,使得云游戏进入游戏场景过程,称为预加载。通过预加载,在接收到终端13启动游戏的请求消息后,第二服务器12可以将已经加载完成的游戏场景画面发送到终端13,以使用户无需等待。
70.本技术实施例涉及的“静态游戏画面”是指,在预加载过程中,若一个游戏画面帧在预设时间内未产生变化,则该游戏画面帧可以被称为静态游戏画面。可选的,预设时间例如可以设置为2秒(s)。
71.本领域一种常用的识别静态游戏画面指示的操作进程的方式例如是,第一服务器基于正则表达式(regular expression),检测静态游戏画面包含的文本中是否包含诸如“更新”、“下载”或者“安装”之类的字符串。如果静态游戏画面包含的文本中包括前述相关字符串,第一服务器确定静态游戏画面表征的语义是更新该云游戏软件,进而,第一服务器触发第二服务器更新该云游戏软件。由于包含前述相关字符串的文本可以包括诸如“立刻下载新皮肤了”,或“存储权限:用于截图、视频的保存和分享,上传下载资源”等,而这些文本表征的语义均不是“更新该云游戏软件”。可见,采用该方式,识别静态游戏画面语义信息的准确率相对较低,从而会影响第二服务器对云游戏软件的预加载流程的执行。
72.基于此,本技术实施例提供了一种软件更新方法,采用本方法第一服务器能够识别静态游戏画面所包含文本的语义信息,若文本的语义信息表征云游戏软件更新,第一服务器触发第二服务器更新该云游戏软件。这样,基于静态游戏画面中文本的语义信息是否是表征云游戏软件更新,使得检测结果的准确率相对较高,从而能够优化云游戏软件预加载的性能。
73.下面通过对几个示例性实施方式的描述,对本技术实施例的技术方案以及本技术的技术方案产生的技术效果进行说明。
74.请参考图2a,本技术实施例提供了一种软件更新方法100(以下简称方法100),方
法100由第一服务器执行,该第一服务器可以如图1中示意的第一服务器11。方法100包括如下步骤:
75.步骤s101、触发云游戏软件预加载。
76.其中,第一服务器可以基于云游戏软件的复杂程度,配置至少一个第二服务器预加载该云游戏服务器。示例性的,第一服务器可以触发相应至少一个第二服务器执行该云游戏软件的预加载进程。第一服务器还可以向相应至少一个第二服务器下发预加载程序文件,以使相应第二服务器通过执行预加载程序文件中的程序,对相应云游戏软件执行预加载。
77.步骤s102、获取云游戏软件预加载过程中的静态游戏画面。
78.其中,第一服务器可以接收来自于第二服务器的静态游戏画面。静态游戏画面是该第二服务器预加载云游戏软件过程中识别到的。
79.云游戏软件预加载过程中出现静态游戏画面,一般是出现了常规预加载流程之外的流程需要执行,例如,云游戏软件需要更新、用户权限变更或者用户帐户更新等。在执行这些常规预加载流程之外的流程之后,可以继续执行云游戏的常规预加载流程。基于此,在预加载过程中出现静态游戏画面的场景下,该云游戏软件可能需要更新,可选的,第一服务器可以基于静态游戏画面检测该云游戏软件是否需要更新。
80.步骤s103、识别静态游戏画面中所包含文本的语义信息。
81.结合前述对静态游戏画面的说明,可选的,静态游戏画面中包含指示云游戏软件待处理流程的说明性文字描述。例如,图3示意的示例性游戏界面包括说明性文字“游戏更新游戏需要更新”。在获得静态游戏画面之后,第一服务器可以识别相应文字描述,得到相关文本,以便于识别相关文本的语义信息。示例性的,第一服务器可以采用ocr(optical character recognition,光学字符识别)技术识别静态游戏画面中包含的文本。
82.可选的,第一服务器可以从文本角度或者文本中所包含词的角度识别文本的语义信息,相应的,语义信息可以包括文本中包含的目标词或文本的文本类别。文本类别为第一类别或第二类别,第一类别表征云游戏软件更新,第二类别云游戏软件不更新。一种可选示例中,文本中包含的目标词的词信息可以表征文本的语义信息,基于此,可以根据文本中目标词的词信息所满足的条件,确定语义信息是否满足云游戏软件更新条件。另一种可选示例中,文本类别为第一类别,确定语义信息满足云游戏软件更新条件。
83.示例性的,第一服务器可以采用以下实施方式识别文本的语义信息。
84.实施方式一:本实施方式介绍第一服务器从文本角度识别文本的语义信息。本示例中,第一服务器中例如预先维护云游戏软件相关的至少一个文本类别,该至少一个文本类别中第一类别例如包括表征云游戏软件更新的类别,第二类别例如包括表征云游戏皮肤更新的类别(以下简称皮肤更新)和表征云游戏帐户更新的类别(以下简称帐户更新)等。进而,第一服务器可以获得文本的语义向量,然后,根据文本的语义向量获得该文本分别对应预设的至少一个文本类别的概率。若文本对应的概率中对应表征云游戏软件更新的概率最大,第一服务器确定文本的文本类别是第一类别,即表征云游戏软件更新。
85.其中,概率可以表征文本的文本类别是相应类别的可能性,概率越大,指示文本的文本类别是相应类别的可能性越大,概率越小,指示文本的文本类别是相应类别的可能性越小。
86.示例性的,第一服务器可以使用学习算法执行实施方式一的实施流程,例如,第一服务器通过nlp神经网络执行实施方式一的实施流程。
87.本示例中,可以基于表征前述每个类别的训练文本,通过学习算法获得nlp神经网络。进而,在获得前述静态游戏画面中包含的文本后,第一服务器通过nlp神经网络获得文本的语义向量。由于文本的语义向量表征文本的语义,nlp神经网络可以根据文本的语义向量获得文本对应前述每个类别的概率。例如,得到文本对应类别游戏更新的概率是0.98、文本对应类别皮肤更新的概率是0.5,文本对应类别帐户更新的概率是0.3,那么,第一服务器可以将文本的类别确定为游戏更新,即确定静态游戏画面中包含的文本表征云游戏软件更新。
88.可以理解的是,以上列举的各文本类别均是示意性描述,不构成对本技术实施例的限制。在其他一些实施方式中,本技术实施例涉及的文本类别还可以更多或者更少,本技术实施例不再一一说明。
89.需要说明的是,为了确保nlp神经网络对文本类别识别的准确性,需要基于大量的训练文本训练nlp神经网络。而实际实施场景中,可能无法提供足够数量的训练文本,例如,表征云游戏软件更新的文本共25个,不足以用于训练nlp神经网络。基于该实施场景,第一服务器可以基于文本中的词识别文本的语义信息。
90.其中,一个文本表达一个语义信息的场景下,该文本中通常会出现很多与语义信息相关的描述性词汇,例如,文本中包含词“热”、词“冰棍”和词“蝉鸣”,可以确定该文本的语义信息是天气炎热。再如,文本中包含词“热”、词“报警”和词“卡顿”,可以确定该文本的语义信息是电子设备散热。这些词可以是对一个语义的不同描述词,例如,“版本更新”和“新版本”,也可以是一个词,但该词在文本中频繁出现。有鉴于此,第一服务器可以对文本执行分词,然后从词信息的角度识别文本语义信息。词信息可以包括文本中包含的目标词的数量,和文本中各目标词的权重中的至少一项信息。示例性的,第一服务器可以采用如下实施方式从词信息的角度识别文本的语义信息。
91.其中,目标词的权重用于指示相应目标词表征文本语义信息是云游戏软件更新的可能性,示例性的,权重越大,说明相应目标词表征文本语义信息是云游戏软件更新的可能性越大,反之,权重越小,说明相应目标词表征文本语义信息是云游戏软件更新的可能性越小。一种可选示例中,权重可以使用大于0且小于1的数值表示,相应的,第三预设值例如可以设置为0.6。应理解,第三预设值的取值可以根据实际实施场景灵活设置,本技术实施例对此不限制。
92.实施方式二:第一服务器可以识别文本中包含的目标词,若文本中包含的目标词的数量大于或者等于第一预设值,确定文本的语义信息满足云游戏软件更新条件,即确定文本表征云游戏软件更新。
93.应理解,第一预设值可以是大于或者等于2的数值,可以根据实际实施场景灵活设置,在本技术的云游戏实施场景中,第一预设值例如可以设置为3。另一种可能的实施方式中,实施场景例如涉及新闻文本,由于新闻文本包含较多字符,第一预设值例如可以设置为5。本技术实施例对此不限制。
94.可选的,本技术技术方案中预配置至少一个关键词,该至少一个关键词均用于表征文本的语义信息是云游戏软件更新。基于此,第一服务器可以检测文本的至少两个词中
是否包含与任一关键词匹配的词,若该至少两个词中的任一词与至少一个关键词中的任一关键词匹配,确定相应词为目标词。
95.一种可选示例中,“与关键词匹配”可以实现为“与关键词相同的词”,即,目标词可以理解为,文本的至少两个词中命中关键词的词。
96.需要指出的是,在云游戏场景中,诸如“更新”和“下载”之类包含两个字的词,覆盖的场景较多,所以,无法清楚的表达被更新的对象。有鉴于此,在一种可选设计中,该至少一个关键词均是包含至少三个字,例如,“发现新版本”、“新资源”、“检测到新版本”或者“版本更新”等词。相应的,第一服务器对文本分词得到的至少两个词中,至少一个词包括至少三个字。
97.可选的,第一服务器可以通过预训练的语义信息识别模型执行实施方式二的操作。语义信息识别模型例如是lda(latent dirichlet allocation,狄利克雷分布)模型。关于lda模型的预训练过程,详见下文的实施例所述,此处不详述。可选的,第一服务器也可以不通过语义信息识别模型执行实施方式二的操作,而是通过部署及调用相关功能性操作指令的方式执行实施方式二的操作,本技术实施例对此不限制。
98.实施方式三:第一服务器可以获取文本中包含的目标词及每个目标词的权重,若文本中包含的目标词的数量大于或者等于第二预设值,且各目标词所对应的权重中的至少一个大于或等于第三预设值,第一服务器确定文本的语义信息满足云游戏软件更新条件,即确定文本表征云游戏软件更新。示例性的,第二预设值可以是大于或者等于1的数值。实施方式三中涉及的目标词的实现,可以参考实施方式二中对目标词的描述,此处不赘述。
99.需要指出的是,第一服务器可以通过预训练的语义信息识别模型执行实施方式三的操作。例如,第一服务器可以将文本输入lda模型,lda模型可以输出文本中包含的各目标词及各目标词所对应的权重,之后,第一服务器根据各目标词及各目标词所对应的权重,确定文本的语义信息。前述权重也可以由lda模型得到。
100.可见,采用实施方式二和实施方式三,第一服务器能够根据文本中包含的词,确定文本的语义信息是否满足云游戏软件更新条件。这样,即使用于训练的语料数量有限,第一服务器依然能够根据词准确的识别静态游戏画面的语义信息。
101.根据前述对语义信息识别模型的描述可知,本技术实施例还可以预先训练语义信息识别模型。下面以语义信息识别模型实现为lda模型为例,对本技术实施例涉及训练模型的实施方式进行说明。
102.本技术的技术方案中,相关技术人员可以预先设置至少一个训练文本。示例性的,该至少一个训练文本可以均是云游戏软件的更新提示文本,例如,文本“版本更新检测到新版本当前处于非环境安装包大小跳过确定”、文本“提示本次要下载的资源总大小为更新”、文本“可以更新了好消息现在可以下载新版本了更新”和文本“是否更新检测到新的版本本次更新需要下载资源当前不是网络建议使用网络下载如暂不更新部分功能及场景可能无法正常显示暂不更新更新”等。进而,对该至少一个训练文本进行分词,得到多个词。之后,可以获得该多个词中各个词在相应训练文本中的词频。其中,各个词的词频以及前述至少一个关键词,为训练lda模型的初始信息。在将这些初始信息输入初始模型之后,初始模型根据前述各个词的词频,确定至少一个关键词中每个关键词的权重,得到lda模型。
103.示例性的,初始模型可以基于每个词的词频,计算至少一个关键词中每个关键词
被随机抽样到的概率,这个概率即为相应关键词的权重。
104.进一步的,在获得前述静态游戏画面所包含文本的至少两个分词之后,第一服务器将该至少两个分词输入lda模型。lda模型识别该至少两个分词中命中关键词的词,得到目标词,进而,lda模型可以输出目标词以及通过前述训练得到的目标词对应的权重。
105.可选的,词频可以使用lda模型技术相关的“词袋”实现。词袋是用于表征分词在相应文本中出现次数的向量。词袋向量不考虑文本中分词的顺序,只考虑分词在这个文本中出现次数。
106.例如,以下两个英文文本:
107.文本1:"john likes to watch movies,mary likes movies too"
108.文本2:"john also likes to watch football games"
109.对该两个文本分词得到词:[

also’,

football’,

games’,

john’,

likes’,

mary’,

movies’,

to’,

too’,

watch’],进而,可以得到该两个文本的词袋向量。为了便于表达,该两个文本的词袋向量例如通过表1的方式说明。
[0110]
表1
[0111] alsofootballgamesjohnlikesmarymoviestotoowatchs10001212111s21111100101
[0112]
如表1所示,s1是文本1的词袋向量,可以表示为s1=[0,0,0,1,2,1,2,1,1,1],s2是文本2的词袋向量,可以表示为s2=[1,1,1,1,1,0,0,1,0,1]。结合表1,s1中的每个值表示相应单词在文本1中出现的次数,例如,单词“also”在文本1中出现的次数是0,单词“likes”在文本1中出现的次数是2,单词“watch”在文本1中出现的次数是1。同理,s2中的每个值表示相应单词在文本1中出现的次数,例如,单词“also”在文本2中出现的次数是1,单词“likes”在文本2中出现的次数是1,单词“watch”在文本1中出现的次数是1。表1中其他列中信息的关系同理,此处不赘述。
[0113]
步骤s104、若语义信息满足云游戏软件更新条件,触发云游戏软件进行更新。
[0114]
其中,根据前述描述,若文本的文本类别为第一类别,或者文本中包含的目标词的数量大于或者等于第一预设值,或者文本中包含的目标词的数量大于或者等于第二预设值,且各目标词所对应的权重中的至少一个大于或等于第三预设值,文本的语义信息表征云游戏软件更新,进而,第一服务器可以触发所有部署该云游戏软件的第二服务器,均更新该云游戏软件。若静态游戏画面所包含文本的语义信息表征其他,例如帐户更新,第一服务器可以触发该静态游戏画面对应的第二服务器,更新该云游戏软件的帐户信息。
[0115]
一些实施方式中,若文本的语义信息满足云游戏软件更新条件,第一服务器可以基于所维护的第二服务器和云游戏软件的对应关系,获得部署该云游戏软件的至少一个第二服务器。然后,第一服务器可以向该至少一个第二服务器发送该云游戏软件的最新版本数据,以使该至少一个第二服务器全部更新该云游戏软件。
[0116]
另一些实施方式中,为了使第二服务器自主推进云游戏软件的更新流程,在确定文本的语义信息满足云游戏软件更新条件之后,第一服务器还可以识别静态游戏画面中更新控件图标的位置,根据更新控件图标的位置生成更新文件,该更新文件中包含点击相应更新控件的指令,之后,第一服务器将该更新文件发送到至少一个第二服务器,以使该至少
一个第二服务器更新该云游戏软件。可选的,第一服务器可以将更新控件图标的图片一同存储在更新文件中。此外,其他一些实施方式中,第一服务器可以将更新文件只发送到静态游戏画面对应的第二服务器。
[0117]
一种可选实现方式中,第一服务器可以在识别静态游戏画面中文本的过程中,获得文本中字符串的位置信息,进而,根据更新控件图标对应的文字的位置信息确定更新控件图标的位置。另一种可选实现方式中,第一服务器可以采用预训练的图像识别模型识别静态游戏画面中更新控件的图标,进而,得到该更新控件图标的位置。
[0118]
更新文件包括与云游戏软件更新相关的指令。一些实施场景中,云游戏软件的预加载过程较为复杂,对应这一类云游戏软件,第一服务器可以预先配置预加载文件。该场景中,第一服务器可以将更新文件添加到云游戏软件的预加载文件中,然后将添加更新文件的预加载文件发送到第二服务器。另一些实施场景中,云游戏软件的预加载过程较为简单,第一服务器无需配置预加载文件。该场景中,第一服务器可以生成更新文件,然后将更新文件发送到第二服务器。
[0119]
示例性的,更新文件包括用于指示基于相应更新控件触发云游戏软件更新的指令,例如,根据更新控件图标的图片匹配更新控件的指令,点击更新控件的指令。本技术实施例将这部分指令的集合称为第一指令集。此外,需要指出的是,在云游戏软件的更新流程中,部分程序可能会执行错误,也可能会弹出通知类窗口等,而这些会导致第一指令集执行超时或者执行失败次数大于第四预设值,从而使得云游戏软件更新无法顺利执行。基于此,更新文件中还包括云游戏软件更新进程异常场景下所执行的指令,例如针对弹出的通知窗口点击确定控件等的指令。本技术实施例将这部分指令的集合称为第二指令集。本示例中,将第一指令集执行超时或者执行失败次数大于第四预设值称为第一指令集执行异常,第四预设值例如可以是3。
[0120]
相应的,第一指令集被调用过程中,使得第二服务器对云游戏软件进行更新。若第一指令集执行异常,第二指令集中与异常相关的指令被调用,使得第二服务器处理产生的异常。之后,第一指令集再次被调用,以使第二服务器再次对云游戏软件进行更新。重复执行上述指令集的调用过程,直到云游戏软件被更新为最新版本。第二服务器依据更新文件对云游戏软件进行更新的操作流程,详见下文描述,此处不详述。
[0121]
可见,采用本实现方式,第一服务器中可以预配置语义信息识别模型,在获得预加载云游戏软件过程中的静态游戏画面之后,第一服务器通过该语义信息识别模型识别静态游戏画面中所包含文本的语义信息。若文本的语义信息满足云游戏软件更新条件,触发相应云游戏软件进行更新,这样能够提高云游戏软件更新检测的准确率。另外,第一服务器在确定云游戏软件更新的场景下,对应云游戏软件的更新生成更新文件,从而能够触发第二服务器自主推进云游戏软件的更新流程。
[0122]
方法100是从第一服务器端对本技术实施例涉及软件更新方法的介绍,实际实现中,第二服务器和第一服务器可以互相配合,以实现本技术实施例的软件更新方法。下面从第二服务器端对本技术实施例的软件更新方法进行介绍。
[0123]
请参考图2b,本技术实施例提供了一种软件更新方法200(以下简称方法200),方法200由第二服务器执行,该第二服务器可以如图1中示意的第二服务器12。其中,方法200与方法100相对应,方法200中涉及的与方法100中相同的特征和技术术语,可以参考方法
100部分的相关描述,此处不再赘述。
[0124]
方法200包括如下步骤:
[0125]
步骤s201、响应于预加载触发指令,预加载云游戏软件并获得云游戏软件预加载过程中的游戏画面。
[0126]
在云游戏场景中,为了确保用户体验达到最佳,第二服务器向用户使用的客户端提供云游戏可玩场景之前,响应来自第一服务器的预加载触发指令,对相关云游戏软件进行预加载,至云游戏软件加载到可玩场景,之后,将云游戏可玩场景发送到客户端,以使用户通过客户端能够直接玩游戏。
[0127]
步骤s202、若游戏画面中包含静态游戏画面,发送静态游戏画面。
[0128]
第二服务器预加载云游戏软件过程中,可以获得并检测该云游戏软件的一系列游戏画面帧。若检测到其中两个游戏画面帧的相似度小于一定值,第二服务器将该两个游戏画面帧中的任一游戏画面确定为静态游戏画面,之后,将该静态游戏画面发送到第一服务器,以使第一服务器确定该静态游戏画面指示的操作。
[0129]
步骤s203、若接收到更新文件,执行更新文件中的第一指令集,以对云游戏软件进行更新。
[0130]
根据方法100的描述,该更新文件是第一服务器确定静态游戏画面表征云游戏软件更新的情况下生成的,相关实施例参见方法100的描述。
[0131]
根据前述实施例的描述,该更新文件包括第一指令集和第二指令集,第一指令集包含用于指示基于相应更新控件触发云游戏软件更新的指令,第二指令集中包含云游戏软件更新进程异常场景下所执行的指令,第二指令集中的指令,用于处理云游戏软件更新进程的异常情况。关于“异常”,详见前述实施例的描述,此处不赘述。
[0132]
示例性的,第二服务器执行更新文件中的第一指令集,以对云游戏软件进行更新。若执行第一指令集异常,执行第二指令集,以处理产生相应异常的流程。在处理产生相应异常的流程后,第二服务器再次执行第一指令集。重复执行上述指令集的调用过程,直到将云游戏软件更新为最新版本。其中,第二服务器执行第一指令集异常包括,第二服务器第一指令集中的指令执行超时或者执行失败次数大于第四预设值。第四预设值例如是3。
[0133]
可选的,第二服务器调用更新文件过程中,对云游戏软件的操作流程可以认为是模拟剧本所描述的操作,基于此,还可以将更新文件称为剧本或者脚本。示例性的,本技术实施例涉及的指令可以使用xml(extensible markup language,可扩展标记语言)编辑,相应的,剧本可以实现为xml文件。
[0134]
该更新文件的逻辑关系及节点功能例如如表2所示。
[0135]
表2
[0136][0137][0138]
结合表2,第一指令集例如包括,在静态游戏画面中匹配更新控件图标的match节点,匹配成功后的true分支的流程包括点击action。第二指令集例如包括,在静态游戏画面中匹配更新控件图标的match匹配失败后,false分支的处理流程,以及其他预加载操作流程等。
[0139]
可以理解的是,表2仅是示意性描述,不构成对本技术实施例的更新文件的限制。在其他一些实施方式中,本技术实施例涉及的更新文件还可以包括更多或者更少的功能节点,具体可以根据实施场景变化而灵活设置。本技术实施例对此不限制。
[0140]
可见,采用xml编辑更新文件,使得更新文件的逻辑层次清晰,且易于修改。
[0141]
结合表2,第二服务器按照第一个match,在静态游戏画面中匹配更新控件图标。如果匹配成功,触发true分支流程,例如,对静态游戏画面中的更新控件图标执行action中的点击操作,以更新云游戏软件。如果匹配失败,且失败次数超过第四预设值,触发false分支
流程,例如,执行第二个match,以及action中的另外一个剧本,以云游戏软件执行其他预加载流程。在其他预加载流程之后,第二服务器执行goto,以跳转到第一个match,再次在静态游戏画面中匹配更新控件图标,以完成对云游戏软件的更新。
[0142]
可以理解的是,第二服务器对应其他节点的操作流程,与match、true、false等的操作流程类似,本技术实施例不再一一说明。
[0143]
可见,采用本技术的技术方案,若云游戏软件需要更新,第二服务器可以依照指令,对静态游戏画面中更新控件自主点击,从而能够自主推进云游戏软件的更新流程和其他预加载流程。
[0144]
方法100和方法200均是从单独服务器的角度对本技术的技术方案进行的描述,下面结合一些示例,从设备交互的角度对本技术实施例进行说明。
[0145]
示例性的,以下以第一服务器实现为云游戏服务器,第二服务器实现为容器为例。其中,云游戏服务器例如采用lda模型识别游戏画面的语义信息。
[0146]
在执行本案的软件更新方法之前,相关技术人员例如配置语料库和关键词库,之后,将关键词库中的关键词均输入待训练的lda模型中。其中,语料库包括至少一个训练文本,关键词库包括至少一个关键词。语料库以及语料库中的训练文本例如如表3所示。
[0147]
表3
[0148]
[0149][0150]
关键词库以其中的关键词例如如表4所示。
[0151]
表4
[0152]
[0153][0154]
进而,例如采用python jieba分词技术对表3中的文本进行分词,得到多个词。之后,获得该多个词中各个词在相应训练文本中的词袋向量,以将所得到的词袋向量作为训练参数输入待训练的lda模型。待训练的lda模型根据词袋向量计算得到表4中每个关键词的权重,得到可用的lda模型。
[0155]
进一步的,请参考图4,本技术实施例提供了一种软件更新方法300(以下简称方法300),方法300包括如下步骤:
[0156]
步骤s301,云游戏服务器触发容器预加载云游戏软件。
[0157]
步骤s302,容器预加载云游戏软件,识别云游戏软件的静态游戏画面帧并发送到云游戏服务器。
[0158]
该静态游戏画面例如如图5所示,是云游戏的游戏版本更新提示画面。
[0159]
步骤s303,云游戏服务器识别静态游戏画面中的文本。
[0160]
本示例中,云游戏服务器可以采用ocr技术识别图5所示游戏画面中包含的文本,例如得到文本“更新退出全新版本发布,更新可以领取奖励”。
[0161]
需要指出的是,云游戏服务器在识别图5所示游戏画面文本的过程中,还识别出每个文本显示区域的位置信息。可选的,任一文本显示区域可以通过top_left_x,top_left_y和down_right_x和down_right_y两对坐标表示,其中,top_left_x表示该区域的左上角在x轴的坐标值,top_left_ytop_left_y表示该区域的左上角在y轴的坐标值,down_right_x表示该区域的右下角在x轴的坐标值,down_right_y表示该区域的右下角在y轴的坐标值。
[0162]
例如,识别图5中的文字“更新”时,可以将“更新”显示区域的坐标也识别出。“更新”显示区域的坐标包括位置51的坐标和位置52的坐标,位置51是“更新”显示区域左上角的位置,位置51是“更新”显示区域右下角的位置。
[0163]
步骤s304,云游戏服务器识别静态游戏画面中的文本的语义信息。
[0164]
具体的,云游戏服务器可以采用python jieba分词技术,对所识别的文本“更新退出全新版本发布,更新可以领取奖励”进行分词,得到词“更新退出”、“全新版本”、“发布更
新”、“可以”和“领取奖励”。之后,云游戏服务器将词“更新退出”、“全新版本”、“发布更新”、“可以”和“领取奖励”输入lda模型。lda模型经过一系列识别过程,例如输出“更新退出,0.3”、“全新版本,0.5”和“发布更新,0.6”,表示文本“更新退出全新版本发布,更新可以领取奖励”相对应表4示意的关键词库,命中关键词“更新退出”、“全新版本”和“发布更新”,其中,“更新退出”的权重是0.3,“全新版本”的权重是0.5和“发布更新”的权重是0.6。
[0165]
由于命中3个关键词,所以,云游戏服务器确定文本“更新退出全新版本发布,更新可以领取奖励”的语义信息满足云游戏软件更新的条件,图5示意的静态游戏画面指示游戏软件更新。
[0166]
步骤s305,云游戏服务器获得静态游戏画面中更新控件图标的位置,生成点击该位置的指令,进而生成更新剧本。
[0167]
根据前述描述,云游戏服务器识别静态游戏画面中的文本过程中,还识别了文本显示区域的坐标,通常字符“更新”的显示区域即为更新控件的显示区域。基于此,云游戏服务器可以获得字符“更新”对应的坐标,即位置51的坐标和位置52的坐标,得到更新控件图标的位置,然后,生成点击更新控件的指令,进而生成更新剧本。更新剧本的功能节点如表2所示,此处不赘述。
[0168]
步骤s306,云游戏服务器将更新剧本和更新控件图标发送到容器。
[0169]
如图6所示,更新控件图标例如是图5中更新控件50的图标。
[0170]
步骤s307,容器执行剧本更新云游戏软件。
[0171]
示例性的,容器可以根据剧本的描述,从容器端的游戏画面中匹配更新控件图标,以确定容器端游戏画面的更新控件。
[0172]
一种可能的实施场景中,容器端的游戏画面同样如图5所示,那么容器可以根据更新控件图标匹配到容器端游戏画面的更新控件,进而,容器根据剧本的描述,对所识别到的更新控件执行虚拟点击操作,以触发云游戏软件的更新。
[0173]
另一种可能的实施场景中,容器端的游戏画面如图7a所示。图7a中,位于最前端的游戏画面是画面71“游戏侦测通告”,指示游戏更新的画面72位于画面71之下。本场景中,容器根据更新控件图标虽然能够匹配到画面72的更新控件,但是容器需要先对应画面71指示的“游戏侦测通告”执行操作,之后,才能够对画面72进行操作。所以,图7a示意的场景中,容器对更新控件执行点击操作会执行失败,例如在执行失败3次之后,容器按照剧本对画面71指示的“游戏侦测通告”执行处理,在对画面71指示的“游戏侦测通告”处理完成之后,图7a更新为图5,容器按照剧本再次对更新控件执行点击操作,以更新云游戏软件。
[0174]
再一种可能的实施场景中,容器端的游戏画面如图7b所示,图7b例如是容器在执行一些操作过程中,对相关软件包解析失败相关提示画面。本场景中,容器根据更新控件图标无法匹配到更新控件,例如执行匹配操作超时。那么,容器按照剧本对图7b相关的提示画面点击确定操作,之后,图7b更新为图5,容器按照剧本再次对更新控件执行点击操作,以更新云游戏软件。
[0175]
可以理解的是,图5至图7b仅是示意性描述,对本技术实施例不构成限制。实际实现中,指示游戏更新的画面,根据游戏软件的不同而不同。游戏更新过程中异常情况的画面,可以根据实际场景而不同。本技术实施例对此不限制。
[0176]
需要指出的是,方法300仅是示意性描述,对本技术实施例的软件更新方法不构成
限制。实际实现中,方法300中涉及的设备还可以是其他设备,例如,容器可以替换为板卡等支持云游戏软件运用的设备。此外,云游戏服务器还可以采用其他模型识别文本的语义信息,或者根据命中关键词的权重确定文本的语义信息。本技术实施例此处不在一一举例。
[0177]
此外,本说明书中涉及的第一服务器、第二服务器、云游戏服务器和容器等,可以均不包含显示部件。基于此,图3、图5至图7b示意的游戏画面,均是为了清楚的表达本技术方案而展示出的,实际实现中,图3、图5至图7b示意的游戏画面用户均不可见。在对这些画面执行操作过程中,相应设备可以是对画面帧的像素信息执行的操作。
[0178]
综上,本技术实施例的实现方式中,在获得预加载云游戏软件过程中的静态游戏画面之后,第一服务器通过该语义信息识别模型识别静态游戏画面中所包含文本的语义信息。若文本的语义信息满足云游戏软件更新的条件,触发相应云游戏软件进行更新,这样能够提高云游戏软件更新检测的准确率。另外,若云游戏软件需要更新,第二服务器可以依照指令,对静态游戏画面中更新控件自主点击,从而能够自主推进云游戏软件的更新流程和其他预加载流程。
[0179]
上述实施例从文本语义信息的识别、更新文件的获得、更新文件的执行等各服务器所执行动作的角度和学习算法处理的角度,对本技术实施例提供的软件更新方法的各实施方式进行了介绍。应理解,对应文本语义信息的识别、更新文件的获得、更新文件的执行等的处理步骤,本技术实施例可以以硬件或硬件和计算机软件的结合形式来实现上述功能。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0180]
例如,若上述实现步骤通过软件模块来实现相应的功能。如图8a所示,提供了一种软件更新装置80,软件更新装置80可以包括预加载触发模块801、获取模块802、语义信息识别模块803和更新触发模块804。该软件更新装置80可用于执行上述方法100中第一服务器的部分或全部操作,以及方法300中云服务器的部分或全部操作。
[0181]
例如:预加载触发模块801,用于触发云游戏软件预加载。获取模块802,用于获取云游戏软件预加载过程中的静态游戏画面,静态游戏画面是指在预加载过程中预设时间内未变化的游戏画面帧。语义信息识别模块803,用于识别静态游戏画面中所包含文本的语义信息。更新触发模块804,用于若语义信息满足云游戏软件更新条件,触发云游戏软件进行更新。
[0182]
由此可见,本技术实施例提供的软件更新装置80,在获得预加载云游戏软件过程中的静态游戏画面之后,识别该静态游戏画面中所包含文本的语义信息。若文本的语义信息满足云游戏软件更新的条件,触发相应云游戏软件进行更新。可见,本技术实施例的技术方案,基于静态游戏画面中文本的语义信息确定是否是云游戏软件需要更新,这样能够准确的检测到云游戏软件是否需要更新。
[0183]
可选的,语义信息包括文本中包含的目标词或文本的文本类别,文本类别为第一类别或第二类别,第一类别表征云游戏软件更新,第二类别云游戏软件不更新。本示例中,语义信息满足云游戏软件更新条件包括以下至少一项:文本中包含的目标词的词信息满足预设条件;文本类别为第一类别。
[0184]
可选的,目标词的词信息包括目标词的数量和目标词的权重中的至少一个,权重
用于指示目标词表征语义信息的程度,文本中包含的目标词的词信息满足预设条件,包括以下至少一项:数量大于或者等于第一预设值;数量大于或者等于第二预设值,以及至少一个权重大于或等于第三预设值。
[0185]
可选的,语义信息识别模块803还用于识别静态游戏画面中包含的文本;对于文本中包含的每个词,若词与预配置的至少一个关键词匹配,确定词为目标词,至少一个关键词均用于表征云游戏软件更新的语义,至少一个关键词均包括至少三个字。
[0186]
可选的,语义信息识别模块803还用于将文本输入预训练的语义信息识别模型;语义信息识别模型输出文本中包含的各目标词及各目标词所对应的权重。
[0187]
可选的,软件更新装置80还包括语义信息识别模型的训练模块,语义信息识别模型的训练模块用于获取至少一个训练文本及至少一个关键词,至少一个关键词均用于表征云游戏软件更新的语义;对至少一个训练文本进行分词,得到多个词;获得多个词中各个词在相应训练文本中的词频;将至少一个关键词、各个词及相应的词频输入初始模型,以使初始模型根据各个词及相应的词频,确定至少一个关键词中每个关键词的权重,得到语义信息识别模型。
[0188]
可选的,更新触发模块804还用于识别静态游戏画面中更新控件图标的位置;根据更新控件图标的位置生成更新文件,更新文件中包含第一指令集,第一指令集包含用于指示基于相应更新控件触发云游戏软件更新的指令;将更新文件发送到至少一个服务器,以使得至少一个服务器对云游戏软件进行更新,至少一个服务器为部署云游戏软件的服务器。
[0189]
可选的,更新文件中还包括第二指令集,第二指令集中包含云游戏软件更新异常场景下所执行的指令,第二指令集中的指令用于指示处理异常,更新触发模块804还用于向至少一个服务器发送更新文件,以使得至少一个服务器重复执行以下步骤,直到云游戏软件更新为最新版本:基于第一指令集对云游戏软件进行更新;若执行第一指令集产生异常,则执行第二指令集中异常对应的指令;在执行异常对应的指令后,再次执行第一指令集;其中,执行第一指令集异常包括,对第一指令集中的指令执行超时或者执行失败次数大于第四预设值。
[0190]
如图8b所示,提供了一种软件更新装置81,软件更新装置81可以包括预加载模块811、发送模块812和软件更新模块813。该软件更新装置81可用于执行上述方法200中第二服务器的部分或全部操作,以及方法300中容器的部分或全部操作。
[0191]
例如,预加载模块811,用于响应于预加载触发指令,预加载云游戏软件并获得云游戏软件预加载过程中的游戏画面。发送模块812,用于若游戏画面中包含静态游戏画面,发送静态游戏画面,静态游戏画面是指在预加载过程中预设时间内未变化的游戏画面帧。软件更新模块813,用于若接收到更新文件,执行更新文件中的第一指令集,以对云游戏软件进行更新,第一指令集包含用于指示对云游戏软件的进行更新的指令。更新文件由软件更新装置80生成,详见前述描述,此处不赘述。
[0192]
由此可见,本技术实施例提供的软件更新装置81,能够依据更新文件中的点击更新控件的指令,自主推进云游戏软件的更新流程。
[0193]
可选的,更新文件中还包括第二指令集,第二指令集中包含云游戏软件更新异常场景下所执行的指令,第二指令集中的指令用于指示处理异常。本示例中,软件更新模块
813还用于重复执行以下步骤,直到将所述云游戏软件更新为最新版本:若执行所述第一指令集异常,执行所述第二指令集中所述异常对应的指令;在执行所述异常对应的指令后,再次执行所述第一指令集;其中,执行第一指令集异常包括,对第一指令集中的指令执行超时或者执行失败次数大于第四预设值。
[0194]
可以理解的是,以上各个模块的划分仅仅是一种逻辑功能的划分,实际实现时,该以上各模块的功能可以集成到硬件实体实现,例如,语义信息识别模块803的功能可以集成到处理器实现,软件更新模块813的功能也可以集成到处理器实现,发送模块812的功能可以集成到收发器实现,更新文件可以维护在存储器中等。
[0195]
请参考图9,图9提供了一种服务器90,该服务器90可以实现上述方法100至方法300中任一设备的功能。服务器90可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,cpu)901(例如,一个或一个以上处理器)和存储器902,一个或一个以上存储应用程序9031或数据9032的存储介质903(例如一个或一个以上海量存储设备)。其中,存储器902和存储介质903可以是短暂存储或持久存储。存储在存储介质903的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器901可以设置为与存储介质903通信,在服务器90上执行存储介质903中的一系列指令操作。
[0196]
服务器90还可以包括一个或一个以上电源904,一个或一个以上有线或无线网络接口905,一个或一个以上输入输出接口906,和/或,一个或一个以上操作系统907,例如windows servertm,mac os xtm,unixtm,linuxtm,freebsdtm等等。
[0197]
上述实施例中由软件更新装置所执行的步骤可以基于该图9所示的服务器结构实现。
[0198]
本技术实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储有云游戏软件的更新指令,当其在计算机上运行时,使得计算机执行如前述方法100至方法300所示实施例描述的方法中的部分或全部步骤。
[0199]
本技术实施例中还提供一种包括云游戏软件的更新指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如前述方法100至方法300所示实施例描述的方法中的部分或全部步骤。
[0200]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0201]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0202]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0203]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0204]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,云游戏的控制装置,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read

onlymemory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0205]
尽管已描述了本技术的可选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本技术范围的所有变更和修改。
[0206]
以上所述的具体实施方式,对本技术的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本技术的具体实施方式而已,并不用于限定本技术的保护范围,凡在本技术的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献