云手机进程控制方法、计算机装置和存储介质与流程

文档序号:22312981发布日期:2020-09-23 01:34阅读:156来源:国知局
云手机进程控制方法、计算机装置和存储介质与流程

本发明涉及云手机技术领域,尤其是一种云手机进程控制方法、计算机装置和存储介质。



背景技术:

云手机服务供应商向用户提供云手机服务,用户使用客户端访问云手机服务供应商的服务端,服务端上运行云手机进程,云手机进程执行接收客户端发送过来的指令和数据、进行数据处理、产生画面以及向客户端反馈数据等任务。服务端的硬件和软件资源有限,并且存在一个用户占用多个云手机进程等情况,因此云手机服务供应商所能同时服务的用户也是有限的。但是现实中经常出现用户客户端占用云手机进程,但是用户并没有实际操作客户端、也没有运行需要挂机的应用程序等情况,导致用户实际上并没有享受云手机服务供应商提供的服务,却又占用了云手机服务供应商的服务端的资源。例如,一些用户使用云手机服务来运行网络游戏应用程序进行网络游戏挂机,网络游戏执行了自动打怪升级等脚本,用户并无实际观看和操作客户端,在网络游戏掉线或者顶号等情况下,网络游戏应用程序将登出但是仍在运行,此时网络游戏挂机被终止而网络游戏应用程序仍占用云手机进程。符合上述情况的云手机进程事实上未向用户提供服务,也就是处于空闲状态。从管理角度来看,云手机服务供应商应该将空闲进程关闭以释放资源,然后可以将释放出的资源供向其他用户服务,但是从技术角度来看,由于云手机进程及其所运行的应用程序通常是加密的,现有技术难以通过检测云手机进程及其所运行的应用程序的运行状态,判断云手机进程是否处于空闲状态。



技术实现要素:

针对上述至少一个技术问题,本发明的目的在于提供一种云手机进程控制方法、计算机装置和存储介质。

一方面,本发明实施例包括一种云手机进程控制方法,包括:

获取第一画面和第二画面;所述第一画面为所述云手机进程在第一时刻对应的画面,所述第二画面为所述云手机进程在第二时刻对应的画面;

将所述第二画面与所述第一画面进行差异对比;

当所述第二画面与所述第一画面的差异低于预设标准,将所述云手机进程确定为空闲进程。

进一步地,云手机进程控制方法还包括以下至少一个步骤:

向使用所述空闲进程的客户端发出提示信息;

更改所述空闲进程的使用权;

将所述空闲进程所产生的数据备份后退出所述空闲进程。

进一步地,云手机进程控制方法还包括以下步骤:

所述第一时刻与第二时刻之间的时间差为预设的定值。

进一步地,云手机进程控制方法还包括以下步骤:

根据所述云手机进程所运行的应用程序确定所述第一时刻与第二时刻之间的时间差。

进一步地,所述根据所述云手机进程所运行的应用程序确定所述第一时刻与第二时刻之间的时间差这一步骤,具体包括:

确定所述云手机进程在所述第一时刻运行第一应用程序;

若在所述第一时刻之后的第一时间段内,所述云手机进程保持运行所述第一应用程序,将所述第一时间段确定为所述第一时刻与第二时刻之间的时间差;所述第一时间段与所述第一应用程序对应;

若在所述第一时刻之后的第一时间段内,所述云手机进程由运行所述第一应用程序切换至运行第二应用程序,在所述第一时间段叠加部分或全部第二时间段,将叠加结果确定为所述第一时刻与第二时刻之间的时间差;所述第二时间段与所述第二应用程序对应。

进一步地,所述在所述第一时间段叠加部分或全部第二时间段这一步骤,具体包括:

确定由所述第一时刻至开始运行所述第二应用程序的时刻之间的时间差占所述第一时间段的比例;

将所述第二时间段与所述比例的乘积作为叠加值;

在所述第一时间段叠加所述叠加值。

进一步地,所述获取第一画面和第二画面这一步骤,具体包括:

在第一时刻对所述云手机进程的运行界面进行截屏,从而获得所述第一画面;

在第二时刻对所述云手机进程的运行界面进行截屏,从而获得所述第二画面。

进一步地,所述将所述第二画面与所述第一画面进行差异对比这一步骤,具体包括:

根据所述云手机进程所运行的应用程序,确定所述云手机进程对应画面的动态区域;所述动态区域为所述画面中随着所述应用程序运行而变化的区域;

从所述第一画面中的所述动态区域获取第一像素参数;

从所述第二画面中的所述动态区域获取第二像素参数;

确定所述第二像素参数与所述第一像素参数之间的差异值。

另一方面,本发明实施例还包括一种计算机装置,包括存储器和处理器,所述存储器用于存储至少一个程序,所述处理器用于加载所述至少一个程序以执行云手机进程控制方法。

另一方面,本发明实施例还包括一种存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于执行云手机进程控制方法。

本发明的有益效果是:实施例中的云手机进程控制方法,通过获取两个画面即可判断云手机进程是否处于空闲状态,便于后续对空闲进程进行处理,在执行过程中无需识别或访问云手机进程所产生的底层数据,技术上能够方便地实现,并且数据处理量较少,能够有效应对云手机服务供应商大规模运行云手机进程等状况。

附图说明

图1为实施例中执行云手机进程控制方法所使用的硬件架构的示意图;

图2为实施例中云手机进程控制方法的流程图。

具体实施方式

本发明的实施例中,所使用的硬件架构如图1所示,包括服务端和客户端,其中服务端由云手机服务供应商所拥有并进行运行管理,客户端由用户持有,服务端和客户端之间通过互联网连接。

服务端运行云手机进程,云手机进程包括云手机操作系统等实现云手机基本功能的程序,以及用于实现摄影、多媒体编辑或游戏等特定功能的应用程序。服务端运行云手机进程产生画面并将画面发送到客户端中进行显示。本发明的实施例中,由服务端执行云手机进程控制方法。

实施例1

参照图2,本实施例中的云手机进程控制方法,包括以下步骤:

s1.获取第一画面和第二画面;本实施例中,第一画面为云手机进程在第一时刻时由于运行自身程序或者应用程序所产生的画面,第一画面为云手机进程在第一时刻时由于运行自身程序或者应用程序所产生的画面;

s2.将所述第二画面与所述第一画面进行差异对比;

s3.当所述第二画面与所述第一画面的差异低于预设标准,将所述云手机进程确定为空闲进程。

步骤s1中,服务端在第一时刻t1对云手机进程的运行界面进行截屏,可以获得第一画面,第一画面显示出云手机进程在第一时刻t1时其本身产生和/或其所运行的应用程序产生的界面内容;在第二时刻t2对云手机进程的运行界面进行截屏,可以获得第二画面,第二画面显示出云手机进程在第二时刻t2时其本身产生和/或其所运行的应用程序产生的界面内容。

本实施例中,在执行一次步骤s1-s3的过程中,第二时刻t2在第一时刻t1之后,它们之间隔着时间差δt,即t2=t1+δt,也就是在获得第一画面之后经过时间差δt再去获取第二画面。本实施例中,时间差δt可以是一个定值,也就是无论将哪个具体时刻定为第一时刻t1,在第一时刻t1时云手机进程的运行情况如何,时间差δt都保持为预设值。

在一些实施例中,在执行完一次步骤s1-s3后,还可以继续执行下一次步骤s1-s3,因此本次步骤s1-s3中的第二时刻t2在下次步骤s1-s3中的第一时刻t1之前,此时可以将本次步骤s1-s3中的第二时刻t2在下次步骤s1-s3中的第一时刻t1之间的时间差也确定为δt,如此,在多次执行步骤s1-s3的情况下,形成第一时刻t1、第二时刻t2、第一时刻t1、第二时刻t2……这样的时间序列,相邻时刻之间的时间差为δt,即服务端定时地对云手机进程进行截图以采集第一画面和第二画面。

通过将第一时刻t1与第二时刻t2之间的时间差设定为定值,可以实现服务端对第一画面和第二画面的定时自动采集。

在一些实施例中,时间差δt可以是不确定的,而是根据云手机进程所运行的应用程序确定所述第一时刻与第二时刻之间的时间差。在这种情况下,服务端在不同的时间执行步骤s1-s3,第一时刻t1所对应的具体时刻不同,云手机进程所运行的应用程序可能是不同的,所确定出的时间差δt也就不同,相应地根据t2=t1+δt所确定的第二时刻t2也就不同。

本实施例中,在执行一次步骤s1-s3时,在第一时刻t1完成对云手机进程的截图获得第一画面后,检测云手机进程所运行的应用程序。本实施例中,将云手机进程在第一时刻t1所运行的应用程序称为第一应用程序,在云手机进程同时运行多个应用程序的情况下,可以根据应用程序的重要性或者使用频率来优先选择出一个应用程序作为第一应用程序。

在第一时刻t1之后的第一时间段δt1内,服务端持续对云手机进程所运行的应用程序进行检测,如果在整个第一时间段δt1内云手机进程都保持运行第一应用程序,那么将第一时间段δt1确定为第一时刻t1与第二时刻t2之间的时间差,即t2=t1+δt1。本实施例中,第一时间段δt1是根据第一应用程序确定的,也就是不同的应用程序作为第一应用程序,其对应的第一时间段δt1的具体值可能不同。

如果在第一时间段δt1内的某个时刻,云手机进程退出第一应用程序并切换运行第二应用程序,那么获取根据第二应用程序确定的第二时间段δt2,然后根据第二时间段δt2对第一时间段δt1进行调整。本实施例中,使用一个比例系数λ(0<λ≤1)乘以第二时间段δt2后将结果叠加至第一时间段δt1,作为第一时刻t1与第二时刻t2之间的时间差,即t2=t1+δt1+λδt2。

本实施例中,比例系数λ的确定方式为:确定云手机进程退出第一应用程序并切换运行第二应用程序的时刻tx,从而确定由第一时刻t1至tx的时间差tx-t1,计算时间差tx-t1占第一时间段δt1的比例作为比例系数λ,即

通过将第一时刻t1与第二时刻t2之间的时间差设定为与云手机进程在第一时刻t1所运行的应用程序有关,可以有效适应不同的应用程序。例如,对于办公软件等画面变化不频繁的应用程序,可以将第一时刻t1与第二时刻t2之间的时间差设定得较短,服务端采集第一画面和第二画面的频率就会较大,这样更容易识别出不相同的第一画面和第二画面,有利于执行步骤s2和s3时获得有效结果;对于网络游戏等画面变化较为频繁的应用程序,可以将第一时刻t1与第二时刻t2之间的时间差设定得较长,这样可以在较容易识别出不相同的第一画面和第二画面的基础上,减少服务端采集第一画面和第二画面的工作以节约资源。

本实施例中,在云手机进程中途切换了应用程序的情况下,服务端还考虑云手机进程在切换前后所运行的应用程序,以确定第一时刻t1与第二时刻t2之间的时间差。由本实施例中的公式可知,云手机进程越早从第一应用程序切换至第二应用程序,第二时刻t2就越早到来,即服务端越早获得第二画面,从而有效应对云手机进程已切换至运行第二应用程序的事实,使得服务端能够更容易识别出不相同的第一画面和第二画面,有利于执行步骤s2和s3时获得有效结果。

本实施例中,在执行步骤s2时,可以先确定云手机进程所运行的应用程序所产生画面的动态区域。本实施例中,分别确定第一画面的动态区域和第二画面的动态区域。本实施例中的动态区域,可以指画面中随着所述应用程序运行而变化的区域。例如,对于聊天类的应用程序,其所产生的画面中的聊天框等部分所显示的内容会随着用户的使用而变化,因此动态区域包括聊天框等所在区域;对于执行下载任务的应用程序,其所产生的画面中的下载进度框等部分所显示的内容会随着下载的进度而变化,因此动态区域包括下载进度框等所在区域。

本实施例中,从第一画面的动态区域中获得第一像素参数,第一像素参数用于表示第一画面的动态区域中的像素亮度、颜色等信息;从第二画面的动态区域中获得第二像素参数,第二像素参数用于表示第二画面的动态区域中的像素亮度、颜色等信息。将第二像素参数与第一像素参数进行对比,如果第二像素参数与第一像素参数都是同一类型的信息,例如都是颜色信息,可以直接通过减法运算等确定第二像素参数与第一像素参数之间的差异值,将第二像素参数与第一像素参数之间的差异值作为第二画面与第一画面的差异。

本实施例中,确定一个阈值作为预设标准,将第二画面与第一画面的差异与预设标准进行比较,如果第二画面与第一画面的差异小于预设标准,表明第二画面与第一画面的差异不大,可以有把握地推知第二画面相比第一画面未发生变化,即云手机进程没有实质地运行应用程序来向用户提供服务,因此可以将云手机进程确定为空闲进程,即判断云手机进程处于空闲状态。

由于空闲进程并未实际提供服务,但是却占用了服务端的资源,因此,本实施例中,对于空闲进程,可以执行以下步骤s401-s403中的任意一个或多个:

s401.向使用所述空闲进程的客户端发出提示信息;

s402.更改所述空闲进程的使用权;

s403.将所述空闲进程所产生的数据备份后退出所述空闲进程。

执行步骤s401时,可以通过用户预留的手机号码等联系方式发送提示消息,以使用户留意到其之前所使用到云手机进程已成为空闲进程,应尽快进行处理。

执行步骤s402时,可以取消当前用户对空闲进程的使用权,释放空闲进程所占用的资源,当有其他用户申请使用空闲进程时,授权其他用户使用。

执行步骤s403时,可以将空闲进程所产生的数据备份到服务端的后台,然后退出空闲进程,当该空闲进程的用户后续进行处理时,向用户发送所备份的数据。

综上所述,步骤s1-s3通过获取两个画面即可判断云手机进程是否处于空闲状态,便于后续对空闲进程进行处理,在步骤s1-s3的执行过程中无需识别或访问云手机进程所产生的底层数据,技术上能够方便地实现,并且数据处理量较少,能够有效应对云手机服务供应商大规模运行云手机进程等状况。

实施例2

本实施例中,一种计算机装置,包括存储器和处理器,所述存储器用于存储至少一个程序,所述处理器用于加载所述至少一个程序以执行实施例1中的云手机进程控制方法。

本实施例中,一种存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于执行实施例1中的云手机进程控制方法,实现与实施例1中所述的相同的技术效果。

需要说明的是,如无特殊说明,当某一特征被称为“固定”、“连接”在另一个特征,它可以直接固定、连接在另一个特征上,也可以间接地固定、连接在另一个特征上。此外,本公开中所使用的上、下、左、右等描述仅仅是相对于附图中本公开各组成部分的相互位置关系来说的。在本公开中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。此外,除非另有定义,本实施例所使用的所有的技术和科学术语与本技术领域的技术人员通常理解的含义相同。本实施例说明书中所使用的术语只是为了描述具体的实施例,而不是为了限制本发明。本实施例所使用的术语“和/或”包括一个或多个相关的所列项目的任意的组合。

应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种元件,但这些元件不应限于这些术语。这些术语仅用来将同一类型的元件彼此区分开。例如,在不脱离本公开范围的情况下,第一元件也可以被称为第二元件,类似地,第二元件也可以被称为第一元件。本实施例所提供的任何以及所有实例或示例性语言(“例如”、“如”等)的使用仅意图更好地说明本发明的实施例,并且除非另外要求,否则不会对本发明的范围施加限制。

应当认识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作——根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向目标终端的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。

此外,可按任何合适的顺序来执行本实施例描述的过程的操作,除非本实施例另外指示或以其他方式明显地与上下文矛盾。本实施例描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。

进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、ram、rom等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本实施例所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。

计算机程序能够应用于输入数据以执行本实施例所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的目标终端,包括显示器上产生的物理和有形目标终端的特定视觉描绘。

以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。在本发明的保护范围内其技术方案和/或实施方式可以有各种不同的修改和变化。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1