终端屏幕展示方法及装置转让专利

申请号 : CN201710536356.0

文献号 : CN107395692B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 戴亦斌陈鹏

申请人 : 广州云测信息技术有限公司

摘要 :

本申请公开了一种终端屏幕展示方法及装置。该方法包括:获取终端内存中的数据,所述数据反映终端屏幕的显示;根据所述数据判断终端屏幕的显示是否变化;若是,则确定用于展示变化后的终端屏幕的图片;将所述图片发送至用户端,用于通过所述用户端对所述图片进行展示。由于只有当终端屏幕的显示变化时,才确定用于展示变化后的终端屏幕的图片,并将其发送至用户端,从而能够减少向用户端发送图片的数量,在网络传输速度较慢的场景下,能够有效缓解卡顿的现象,因此解决了现有技术以固定帧率向客户端发送图片所带来的问题。

权利要求 :

1.一种终端屏幕展示方法,其特征在于,该方法用于远程真机测试系统,该系统由用户端和服务端组成,其中服务端中包括服务器、控制器以及与控制器连接的多个终端;这些终端中安装有代理程序Agent,能够通过该代理程序Agent从终端内存中获取屏幕的数据,这些数据能够指示终端屏幕各个像素所显示的亮度和色彩;该控制器一端连接服务器,另一端连接多个终端,并且控制器用于接收各个终端通过代理程序Agent生成并发送的图片;服务器与用户端以及控制器相连,从控制器中获取图片,并将所获取的图片发送至用户端,服务器还根据用户的选择,将待测试的APP安装到用户所选择的型号或类型的终端上,其中安装了待测试APP的终端为待展示终端;

所述方法包括:

获取终端内存中的数据,所述数据反映终端屏幕的显示;

根据所述数据判断终端屏幕的显示是否变化,具体包括:将所述数据与预存的终端屏幕前一帧图像的数据进行对比,并根据对比结果判断终端屏幕的显示是否变化;设置阈值来判断所述数据相对于前一帧图像数据是否发生变化,如果所述数据相对于前一帧图像数据的变化超过阈值,则判断所述数据相对于前一帧图像数据发生变化,否则判断未发生变化;

若是,则确定用于展示变化后的终端屏幕的图片;

将所述图片发送至用户端,用于通过所述用户端对所述图片进行展示,具体包括:将所述图片进行压缩,并将压缩后的图片发送至用户端,其中压缩后的图片的水平分辨率小于等于水平阈值并且垂直分辨率小于等于垂直阈值;先检测用户的网络传输速度,然后根据用户的网络传输速度来确定水平阈值和垂直阈值的大小。

2.如权利要求1所述方法,其特征在于,获取终端内存中的数据,具体包括:通过代理程序Agent获取所在终端的内存中的数据。

3.如权利要求1所述方法,其特征在于,确定用于展示变化后的终端屏幕的图片,具体包括:根据所述数据生成用于展示变化后的终端屏幕的图片。

4.如权利要求1所述方法,其特征在于,确定用于展示变化后的终端屏幕的图片,具体包括:对变化后的终端屏幕进行截屏,并将截屏图片确定为用于展示变化后的终端屏幕的图片。

5.如权利要求1所述方法,其特征在于,通过所述用户端对所述图片进行展示,具体包括:通过所述用户端的web浏览器对所述图片进行展示。

6.一种终端屏幕展示装置,其特征在于,该装置用于远程真机测试系统,该系统由用户端和服务端组成,其中服务端中包括服务器、控制器以及与控制器连接的多个终端;这些终端中安装有代理程序Agent,能够通过该代理程序Agent从终端内存中获取屏幕的数据,这些数据能够指示终端屏幕各个像素所显示的亮度和色彩;该控制器一端连接服务器,另一端连接多个终端,并且控制器用于接收各个终端通过代理程序Agent生成并发送的图片;服务器与用户端以及控制器相连,从控制器中获取图片,并将所获取的图片发送至用户端,服务器还根据用户的选择,将待测试的APP安装到用户所选择的型号或类型的终端上,其中安装了待测试APP的终端为待展示终端;

所述装置包括:获取单元、判断单元、确定单元以及发送单元,其中:

获取单元,获取终端内存中的数据,所述数据反映终端屏幕的显示;

判断单元,根据所述数据判断终端屏幕的显示是否变化,具体包括:将所述数据与预存的终端屏幕前一帧图像的数据进行对比,并根据对比结果判断终端屏幕的显示是否变化;

设置阈值来判断所述数据相对于前一帧图像数据是否发生变化,如果所述数据相对于前一帧图像数据的变化超过阈值,则判断所述数据相对于前一帧图像数据发生变化,否则判断未发生变化;

确定单元,当终端屏幕的显示变化时,确定用于展示变化后的终端屏幕的图片;

发送单元,将所述图片发送至用户端,用于通过所述用户端对所述图片进行展示,具体包括:将所述图片进行压缩,并将压缩后的图片发送至用户端,其中压缩后的图片的水平分辨率小于等于水平阈值并且垂直分辨率小于等于垂直阈值;先检测用户的网络传输速度,然后根据用户的网络传输速度来确定水平阈值和垂直阈值的大小。

7.如权利要求6所述装置,其特征在于,确定用于展示变化后的终端屏幕的图片,具体包括:根据所述数据生成用于展示变化后的终端屏幕的图片。

说明书 :

终端屏幕展示方法及装置

技术领域

[0001] 本申请涉及远程真机测试技术领域,尤其涉及终端屏幕展示方法及装置。

背景技术

[0002] 在远程真机测试系统中,用户通过安装在PC上的软件远程连接到服务器,服务器连接了真实的远程终端(比如,手机等)。用户可以通过PC上的软件将待测试的应用(application,APP)上传到服务器,并通过服务器将该APP安装在远程终端,从而能够在远程终端对该APP进行测试,并且在测试过程中,为了便于用户及时了解测试结果,服务器还可以将远程终端的屏幕在该软件上进行实时展示。
[0003] 在实际应用中,服务器为了将远程终端的屏幕在用户PC的软件上进行实时展示,通常会以固定帧率向用户PC上推送用于展示远程终端屏幕的图片。然而,这种以固定帧率向用户PC推送图片的方式,在网络传输速度较慢的场景下,可能会出现卡顿的现象。

发明内容

[0004] 本申请实施例提供终端屏幕展示方法及装置,能够用于解决现有技术中的问题。
[0005] 本申请实施例提供了一种终端屏幕展示方法,该方法包括:
[0006] 获取终端内存中的数据,所述数据反映终端屏幕的显示;
[0007] 根据所述数据判断终端屏幕的显示是否变化;
[0008] 若是,则确定用于展示变化后的终端屏幕的图片。
[0009] 将所述图片发送至用户端,用于通过所述用户端对所述图片进行展示。
[0010] 优选地,根据所述数据判断终端屏幕的显示是否变化,具体包括:
[0011] 将所述数据与预存的终端屏幕前一帧图像的数据进行对比,并根据对比结果判断终端屏幕的显示是否变化。
[0012] 优选地,获取终端内存中的数据,具体包括:通过代理程序Agent获取所在终端的内存中的数据。
[0013] 优选地,确定用于展示变化后的终端屏幕的图片,具体包括:根据所述数据生成用于展示变化后的终端屏幕的图片。
[0014] 优选地,确定用于展示变化后的终端屏幕的图片,具体包括:对变化后的终端屏幕进行截屏,并将截屏图片确定为用于展示变化后的终端屏幕的图片。
[0015] 优选地,将所述图片发送至用户端,具体包括:
[0016] 将所述图片进行压缩,并将压缩后的图片发送至用户端,其中压缩后的图片的水平分辨率小于等于水平阈值并且垂直分辨率小于等于垂直阈值。
[0017] 优选地,通过所述用户端对所述图片进行展示,具体包括:通过所述用户端的web浏览器对所述图片进行展示。
[0018] 本申请实施例还提供了一种终端屏幕展示装置,该装置包括:获取单元、判断单元、确定单元以及发送单元,其中:
[0019] 获取单元,获取终端内存中的数据,所述数据反映终端屏幕的显示;
[0020] 判断单元,根据所述数据判断终端屏幕的显示是否变化;
[0021] 确定单元,当终端屏幕的显示变化时,确定用于展示变化后的终端屏幕的图片;
[0022] 发送单元,将所述图片发送至用户端,用于通过所述用户端对所述图片进行展示。
[0023] 优选地,根据所述数据判断终端屏幕的显示是否变化,具体包括:
[0024] 将所述数据与预存的终端屏幕前一帧图像的数据进行对比,并根据对比结果判断终端屏幕的显示是否变化。
[0025] 优选地,确定用于展示变化后的终端屏幕的图片,具体包括:根据所述数据生成用于展示变化后的终端屏幕的图片。
[0026] 本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
[0027] 采用本申请实施例所提供的终端屏幕展示方法,在获取终端内存中反映终端屏幕显示的数据之后,根据该数据判断终端屏幕的显示是否变化,由于只有当终端屏幕的显示变化时,才确定用于展示变化后的终端屏幕的图片,并将其发送至用户端,从而通过用户端对该图片进行展示,而如果终端屏幕的显示未变化,并不会确定图片发送至用户端,从而能够减少向用户端发送图片的数量,在网络传输速度较慢的场景下,能够有效缓解卡顿的现象,因此解决了现有技术以固定帧率向客户端发送图片所带来的问题。

附图说明

[0028] 此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0029] 图1为本申请实施例提供的远程真机测试系统的结构示意图;
[0030] 图2为本申请实施例提供的终端屏幕展示方法的具体流程示意图;
[0031] 图3为本申请实施例提供的终端展示方法,在web浏览器展示终端屏幕的场景示意图;
[0032] 图4为本申请实施例提供的终端屏幕展示方法在具体应用中的流程示意图;
[0033] 图5为本申请实施例提供的终端屏幕展示装置的结构示意图。

具体实施方式

[0034] 为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0035] 以下结合附图,详细说明本申请各实施例提供的技术方案。
[0036] 如上所述,在实际应用中,服务器为了将远程终端的屏幕在用户PC的软件上进行实时展示,通常会以固定帧率向用户PC上推送用于展示远程终端屏幕的图片。然而,这种以固定帧率向用户PC推送图片的方式,在网络传输速度较慢的场景下,可能会出现卡顿的现象。
[0037] 比如,当网络传输速度相对较慢,而传输的帧率相对较高时,用户PC上所展示的图片可能会出现卡顿的现象,影响测试效果。
[0038] 基于此,本申请实施例提供了一种终端屏幕展示方法,能够用于解决现有技术中的问题。为了便于理解本申请所提供的终端屏幕展示方法,可以先对远程真机测试系统进行简单介绍。如图1所示为该系统10的结构示意图,该系统10由用户端11和服务端12组成,其中服务端12中包括服务器121、控制器122以及与控制器122连接的多个终端(包括终端1、终端2至终端n)。
[0039] 在该系统10中,用户端10可以是用户进行测试时所使用的PC(personal computer,个人电脑)、手机、平板等,可以在用户端10的软件上对终端的屏幕进行展示。其中,该软件通常可以是web浏览器或者其他的应用程序等。
[0040] 服务端12中包括的多个终端,这些终端可以分别是手机、电脑或平板等,并且这些终端中安装有代理程序Agent,能够通过该代理程序Agent从终端内存中获取屏幕的数据,这些数据能够指示终端屏幕各个像素所显示的亮度和色彩,因此能够反映终端屏幕当前帧图像的具体显示内容。
[0041] 比如,终端1中安装有代理程序Agent,该代理程序Agent能够从终端1的内存中获取终端1屏幕的数据,该数据反映了终端1屏幕的显示。
[0042] 服务端12中的控制器122,该控制器122一端连接服务器121,另一端连接多个终端,并且控制器122能够用于接收各个终端通过代理程序Agent生成并发送的图片。在实际应用中服务端12中可能会包括多个控制器122,这些控制器122各自连接服务器121以及多个终端。
[0043] 服务器121与用户端11以及控制器122相连,可以从控制器122中获取图片,并将所获取的图片发送至用户端11。另外,服务器121还可以根据用户的选择,将待测试的APP安装到用户所选择的型号或类型的终端上,其中安装了待测试APP的终端为待展示终端;当然,如果用户并未选择在某个终端上进行测试,服务器121也可以随机选择在某个终端上安装待测试的APP,也可以根据预设的优先级顺序或者其它规则确定出某个终端,并在该终端上安装待测试的APP。
[0044] 比如,终端1至终端n分别为不同型号的手机,用户需要将APP在终端2上进行测试;此时,用户可以通过用户端11将该APP上传至服务器121,并选择终端2作为测试终端,服务器121接收该APP后,根据用户的选择将该APP安装到终端2中,从而进行测试。
[0045] 上述是对系统10的简单介绍,下面可以结合图1和图2对本申请实施例所提供的终端屏幕展示方法进行具体说明。如图2所示,该方法的具体步骤如下:
[0046] 步骤S21:获取终端内存中的数据。
[0047] 所获取的数据能够指示终端屏幕各个像素所显示的亮度和色彩,因此能够反映终端屏幕当前帧图像的具体显示内容。终端屏幕所显示的每一帧图片与内存中的数据相对应,通常当内存中的数据发生变化时,会在屏幕所显示的内容中进行反映,此时屏幕的显示发生变化;当终端内存中的数据未发生变化时,终端屏幕的显示也并不会发生变化。
[0048] 终端屏幕发生变化可能会有多种方式,比如屏幕所显示的时间发生变化(对应终端内存中计时数据发生变化),屏幕所显示的亮度发生变化(终端内存中对应屏幕亮度的数据发生变化),用户滑动或点击终端屏幕(或其中的控件)所引起的终端屏幕显示的变化等,这些终端屏幕显示的变化会对应内存数据的变化。
[0049] 在APP测试过程中,被测试APP在终端上安装之后,用户可以在用户端软件(比如,PC的web浏览器)上进行远程操作,服务器会将终端屏幕的显示内容展示在用户端软件上;通常用户可以点击被测试APP的图标,从而测试该被测试APP的启动情况,此时终端屏幕的显示发生变化,在被测试APP启动之后,用户也可以点击该APP上的控件,从而通过屏幕的变化情况对该APP上的控件进行测试。
[0050] 步骤S22:根据所述数据判断终端屏幕的显示是否变化。
[0051] 可以将反映终端屏幕当前帧图像具体显示内容的该数据(称之为当前数据),与预存的反映终端屏幕前一帧图像具体显示内容的数据进行对比(称之为预存数据),从而根据对比结果判断终端屏幕的显示是否发生变化。比如,当前数据与预存数据相比并未发生变化,则可以判断终端屏幕当前帧图像与前一帧图像相比并未发生变化,也就是说终端屏幕的显示并未发生变化;如果当前帧数据与预存数据相比发生变化,则可以判断终端屏幕当前帧图像与前一帧图像相比发生变化,也就是说终端屏幕的显示发生变化。
[0052] 通常判断当前数据相对于预存数据是否发生变化,可以设置阈值,其中阈值的大小可以根据具体需要来设定。如果当前数据相对于预存数据的变化超过阈值,则判断当前数据相对于预存数据发生变化,否则判断未发生变化。
[0053] 比如,可以将阈值设置为0,如果当前数据相对于预存数据的变化超过0,则可以判断屏幕的显示发生变化。
[0054] 步骤S23:当终端屏幕的显示变化时,确定用于展示变化后的终端屏幕的图片。
[0055] 在实际测试过程中,当终端屏幕的显示发生变化时,为了便于用户及时了解测试状况,应该将变化后的终端屏幕向用户展示。因此,可以当终端屏幕的显示变化时,可以确定用于展示变化后的终端屏幕的图片。
[0056] 其中,确定用于展示变化后的终端屏幕的图片的具体方式可以有多种,比如,可以根据反映终端屏幕当前帧图像具体显示内容的数据生成图片,显然该图片能够用于展示变化后的终端屏幕。
[0057] 比如,当前帧图像相对于前一帧图像发生变化,可以利用从内存中获取的数据生成用于展示变化后的终端屏幕的图片。这种方式利用从内存中获得的数据直接生成图片,执行效率较高。
[0058] 确定用于展示变化后的终端屏幕的图片的具体方式还可以是,对变化后的终端屏幕进行截屏,并将截屏图片确定为用于展示变化后的终端屏幕的图片。这种方式在判断终端屏幕变化之后,对终端屏幕进行截屏,从而获得用于展示终端屏幕的图片。
[0059] 此外,如果终端屏幕的显示未发生变化,则并不去执行确定图片的操作(该图片用于展示终端屏幕)。也就是说,相对于前一帧图像,如果当前帧图像未发生变化,则并不重新获取图片用于展示终端屏幕,只有当终端屏幕的显示发生变化时,才会确定新的用于展示变化后终端屏幕的图片。
[0060] 步骤S24:将所确定的图片发送至用户端,用于通过所述用户端对所述图片进行展示。
[0061] 可以通过服务端12中服务器121将所确定的图片发送至用户端11,通常服务器121发送该图片时,也可以采用固定帧率(每秒发送固定帧数的图片)的方式进行发送,该固定帧率可以是6帧每秒或8帧每秒(也可以是其他值)。
[0062] 比如,在一分钟内,终端屏幕所展示的每一帧图像相对于前一帧图像均发生变化,则可以以6帧每秒的固定帧率向客户端发送图片。此时,如果某一帧图像相对于前一帧图像并未发生变化,则对应的图片可以不用再次发送至客户端,客户端展示的仍然是前一张图片。
[0063] 当然,在实际应用中,服务器121也可以依照其它的发送规则,以其它的方式将所确定的图片发送至用户端11,这里就不再一一赘述。
[0064] 用户端11在接收到服务器121所发送的图片之后,可以通过将该图片进行展示来展示对应的终端屏幕。用户端11展示压缩后的图片的方式可以有多种,比如可以通过web浏览器来展示压缩后的图片,也可以通过其它相应的客户端软件来展示终端屏幕。
[0065] 采用本申请实施例所提供的终端屏幕展示方法,在获取终端内存中反映终端屏幕显示的数据之后,根据该数据判断终端屏幕的显示是否变化,由于只有当终端屏幕的显示变化时,才确定用于展示变化后的终端屏幕的图片,并将其发送至用户端,从而通过用户端对该图片进行展示,而如果终端屏幕的显示未变化,并不会确定图片发送至用户端,从而能够减少向用户端发送图片的数量,在网络传输速度较慢的场景下,能够有效缓解卡顿的现象,因此解决了现有技术以固定帧率向客户端发送图片所带来的问题。
[0066] 这里可以将现有技术与本申请进行对比,现有技术中服务器以固定帧率向用户端发送图片,在发送图片之前并不对终端屏幕的显示进行判断,这样必然会导致有较多的冗余图片(相同图片),传输过程占用网络传输资源;而本申请先对终端屏幕的显示加以判断,只有当其显示变化时,才向用户端发送相应的图片,这样可以大大减少所发送的冗余图片,同时减少对网络传输资源的占用,在网络传输速度较慢的情况下,能够缓解卡顿的情况。另外,现有技术以固定帧率发送图片时,也需要占用服务器较大的计算资源,本申请的技术方案由于发送的图片相对较少,也可以减少对服务器计算资源的占用。
[0067] 需要说明的是,本申请实施例所提供的终端屏幕展示方法的各步骤的执行主体均可以是同一设备,或者,该方法的各步骤也可以由不同设备作为执行主体。比如,步骤S21和步骤S22的执行主体可以为设备1;又比如,步骤S21的执行主体可以为设备1,步骤S22和的执行主体可以为设备2;等等。
[0068] 比如,步骤S21~步骤S24的执行主体可以均为服务端12中的服务器121,此时,服务器121通过终端上的代理程序Agent,获取该代理程序Agent所在终端的内存中的数据,并执行其它步骤的相应操作;也可以是步骤S21~步骤S23的执行主体可以为终端,步骤S24的执行主体为服务器121等。
[0069] 在一些场景下,用户往往需要将待测试APP在不同型号或类型的终端上分别进行测试,而这些终端的屏幕大小和分辨率通常并不相同,从而导致所确定的图片分辨率不同(包括水平分辨率和垂直分辨率)。此时,为了在web浏览器网页中的固定位置以相同的比例展示图片,在将其发送至客户端之前,可以先将图片进行压缩,并将压缩后的图片发送至客户端,其中,压缩后的图片的水平分辨率小于等于水平阈值并且垂直分辨率小于等于垂直阈值。用户端在通过web浏览器对图片进行展示时,可以将水平阈值作为水平分辨率,并且将垂直阈值作为垂直分辨率对压缩后的图片进行展示。当然,将图片压缩之后进行发送,还可以进一步减少对网络传输资源的占用。
[0070] 对图片进行压缩的方式通常可以有多种,比如可以采用ACDS、Photoshop等图片处理软件对图片进行压缩,也可以采用其他方式对图片进行压缩,这里对图片压缩所采用的具体方式不进行限定,只需要压缩之后的图片的水平分辨率小于或等于水平阈值,并且垂直分辨率小于等于垂直阈值。
[0071] 另外,这里的水平阈值和垂直阈值的大小,可以预先进行设定和修改,在具体的设定和修改过程中,可以先检测用户的网络传输速度,然后根据用户的网络传输速度来确定水平阈值和垂直阈值的大小,比如,当网络传输速度较快时,可以设置相对较大的水平阈值和垂直阈值,从而使压缩后的图片相对较大,对终端屏幕展示效果较好,当网络传输速度较慢时,可以设置相对较小的水平阈值和垂直阈值,使得压缩后的图片相对较小,更加易于传输。
[0072] 根据需要也可以将水平阈值和垂直阈值均设定为固定值,比如,水平阈值设定为750,垂直阈值为1024(当然,也可以为其它值)。通常将水平阈值和垂直阈值均设定为固定值的方式,更加便于在用户端的固定区域进行展示,比如用户端可以通过web浏览器展示压缩后的图片,通常在web浏览器的网也中分配固定区域展示该图片,将水平阈值和垂直阈值均设定为固定值更加便于划分该固定区域,从而进行图片的展示。当然,水平阈值和垂直阈值均的固定值的大小,可以根据A/B测试等方式进行确定。
[0073] 为了使得压缩后的图片的水平分辨率小于等于水平阈值,并且垂直分辨率小于等于垂直阈值,在压缩过程中,可以保持纵横比进行压缩,也可以不保持纵横比进行压缩。
[0074] 当保持纵横比压缩进行压缩时,也有多种方式,比如可以先根据图片的水平分辨率确定水平压缩率,其中水平压缩率用于指示将图片的水平分辨率压缩至小于等于水平阈值,在确定水平压缩率之后,在保持纵横比的条件下,根据水平压缩率对图片进行压缩;也可以先根据压缩前的图片的垂直分辨率确定垂直压缩率,垂直压缩率用于指示将图片的垂直分辨率压缩至小于等于垂直阈值,在确定垂直压缩率之后,在保持纵横比的条件下,根据垂直压缩率对图片进行压缩。通常保持纵横比压缩进行压缩时,压缩后的图片不易于失真。
[0075] 当然,也可以在不保持纵横比的情况下进行压缩,此时可以根据图片的水平分辨率确定水平压缩率,并根据图片的垂直分辨率确定垂直压缩率,其中,水平压缩率用于指示将图片的水平分辨率压缩至小于等于水平阈值,垂直压缩率用于指示将图片的垂直分辨率压缩至小于等于水平阈值,在确定水平压缩率和垂直压缩率之后,根据水平压缩率和垂直压缩率对图片进行压缩。不保持纵横比的压缩方式,由于水平压缩率和垂直压缩率可以独立设定,通常更为灵活。
[0076] 如图3所示为用户端通过web浏览器展示压缩后的图片的一种示意图。在图3中,用户端具体为PC,终端为手机,用户通过PC在远程的手机上进行APP的测试,并通过PC上的web浏览器展示手机屏幕。从图3中可以看出,左侧为web浏览器上展示的手机屏幕,手机屏幕上显示有“音乐”、“邮件”等多个APP,手机屏幕上方有终端标识(包括手机的型号等),终端标识的左侧可以调节所展示的清晰度(包括高清、流畅等模式),以及将手机屏幕横屏或竖屏显示的按钮;在web浏览器的右侧包括过个空间,比如可以点击“应用”下的“上传本地应用”上传待测试的APP,下方包括多个信息显示标签。
[0077] 上述是对本申请实施例所提供的终端屏幕展示方法的具体说明,为了便于理解,下面可以结合具体的示例对该方法进一步说明。
[0078] 在该示例中用户端具体为PC,用户端PC上用于展示终端屏幕的软件具体为web浏览器,服务端的终端具体为手机(包括手机1至手机n),手机上安装有代理程序Agent。用户通过web浏览器将待测试的APP上传到服务器,并选择具体用于测试的手机(可以为手机1至手机n中的任意一个,这里称之为目标手机),然后服务器根据用户的选择将待测试的APP安装到目标手机中,为了便于用户及时了解测试结果,可以将目标手机的屏幕展示在用户PC的web浏览器上。整个测试过程如图4所示,包括如下步骤:
[0079] 步骤S31:用户通过PC上传待测试的APP,并选择目标手机为用于测试的手机;
[0080] 步骤S32:服务器接收该待测试的APP,并根据用户的选择将该待测试的APP安装至目标手机上;
[0081] 步骤S33:目标手机上的代理程序Agent获取内存中的数据;
[0082] 其中,该数据能够指示目标手机屏幕各个像素所显示的亮度和色彩,因此能够反映目标手机屏幕当前帧图像的具体显示内容。
[0083] 步骤S34:将该数据与目标手机所展示的前一帧图像的数据进行对比,根据对比结果判断目标手机屏幕的显示是否变化;
[0084] 步骤S35:当屏幕的显示变化时,通过所获取的数据生成图片;
[0085] 其中,该图片用于展示变化后的终端屏幕。
[0086] 步骤S36:将该图片压缩后发送至用户端;
[0087] 步骤S37:用户PC通过web浏览器对压缩后的图片进行展示。
[0088] 基于与本申请实施例所提供的终端屏幕展示方法相同的发明构思,本申请实施例还提供了一种终端屏幕展示装置,也可以用于解决现有技术中的问题,其中对于该装置实施例,如有不清楚之处,可以参考相应的方法实施例。如图5所示,该装置50包括:获取单元501、判断单元502、确定单元503以及发送单元504,其中:
[0089] 获取单元501,获取终端内存中的数据,所述数据反映终端屏幕的显示;
[0090] 判断单元502,根据所述数据判断终端屏幕的显示是否变化;
[0091] 确定单元503,当终端屏幕的显示变化时,确定用于展示变化后的终端屏幕的图片;
[0092] 发送单元504,将所述图片发送至用户端,用于通过所述用户端对所述图片进行展示。
[0093] 由于该装置50采用与本申请所提供的终端屏幕展示方法相同的发明构思,因此也能够解决现有技术中的问题,这里就不再一一赘述。另外,在实际应用中该装置50通过结合具体的硬件设备取得其它的实施效果,也在本申请的保护范围之内。
[0094] 在实际应用中,判断单元502根据所述数据判断终端屏幕的显示是否变化,可以具体包括:将所述数据与预存的终端屏幕前一帧图像的数据进行对比,并根据对比结果判断终端屏幕的显示是否变化。
[0095] 获取单元501获取终端内存中的数据,可以具体包括:通过代理程序Agent获取所在终端的内存中的数据。
[0096] 确定单元503确定用于展示变化后的终端屏幕的图片,可以具体包括:根据所述数据生成用于展示变化后的终端屏幕的图片。
[0097] 确定单元503确定用于展示变化后的终端屏幕的图片,还可以具体包括:对变化后的终端屏幕进行截屏,并将截屏图片确定为用于展示变化后的终端屏幕的图片。
[0098] 发送单元504将所述图片发送至用户端,可以具体包括:将所述图片进行压缩,并将压缩后的图片发送至用户端,其中压缩后的图片的水平分辨率小于等于水平阈值并且垂直分辨率小于等于垂直阈值。通过所述用户端对所述图片进行展示,具体包括:通过所述用户端的web浏览器对所述图片进行展示。
[0099] 本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0100] 本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0101] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0102] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0103] 在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
[0104] 内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
[0105] 计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0106] 还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0107] 本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0108] 以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。