移动终端APP远程检测方法、移动终端及客户端技术领域
本发明涉及APP检测技术领域,特别涉及一种移动终端APP远程检测方法、移动终
端及客户端。
背景技术
目前,检测APP在移动终端(包括Android移动终端,例如手机)是否安全时,需要在
定制地(APP开发商或者移动终端开发商所在地)进行检测,如果检测点距离定制地太远,大
部分时间将浪费在交通上面,将耗掉大量的人力和物力,增加了企业或者个人的成本开销。
发明内容
本发明实施例提供了一种移动终端APP远程检测方法、移动终端及客户端,以进行
APP远程检测,节省时间及成本。
为了实现上述目的,本发明实施例提供了一种移动终端APP远程检测方法,包括:
移动终端通过web服务端远程接收客户端的APP检测请求及APP操作指令,所述移
动终端与所述客户端远程连接;
所述移动终端根据所述APP操作指令调用移动终端操作系统的应用程序编程接口
执行APP操作,并根据所述APP检测请求进行APP检测;
其中,所述移动终端通过所述web服务端向所述客户端实时发送的移动终端实时
画面,所述移动终端实时画面中包含移动终端显示的测试结果画面。
一实施例中,所述的移动终端APP远程检测方法还包括:所述移动终端采用多线程
实时采集所述移动终端实时画面,并采用多线程通过离散余弦变换、Huffman编码或算术编
码对采集的移动终端实时画面进行压缩。
一实施例中,所述移动终端通过所述web服务端向所述客户端实时发送的移动终
端实时画面,包括:
所述移动终端采取阻塞队列向所述客户端实时发送的所述移动终端实时画面。
一实施例中,所述APP操作指令包含如下具体操作指令:拖拽指令、单击指令、双击
指令及物理按键指令;
所述移动终端根据所述APP操作指令调用移动终端操作系统的应用程序编程接口
执行APP操作,包括:
所述移动终端将所述APP操作指令解析得到具体操作指令;
根据所述具体操作指令调用移动终端操作系统的应用程序编程接口执行APP操
作。
一实施例中,所述的移动终端APP远程检测方法还包括:所述移动终端将自身的屏
幕分辨率上传至所述web服务端。
为了实现上述目的,本发明实施例提供了一种移动终端,包括:
信息接收单元,用于通过web服务端远程接收客户端的APP检测请求及APP操作指
令,所述移动终端与所述客户端远程连接;
检测单元,用于根据所述APP操作指令调用移动终端操作系统的应用程序编程接
口执行APP操作,并根据所述APP检测请求进行APP检测;
图像发送单元,用于通过所述web服务端向所述客户端实时发送的移动终端实时
画面,所述移动终端实时画面中包含移动终端显示的测试结果画面。
一实施例中,该移动终端还包括:图像采集单元,用于采用多线程实时采集所述移
动终端实时画面,并采用多线程通过离散余弦变换、Huffman编码或算术编码对采集的移动
终端实时画面进行压缩。
一实施例中,所述图像发送单元具体用于:采取阻塞队列向所述客户端实时发送
的所述移动终端实时画面。
一实施例中,所述APP操作指令包含如下具体操作指令:拖拽指令、单击指令、双击
指令及物理按键指令;所述检测单元包括:
指令解析模块,用于所述移动终端将所述APP操作指令解析得到具体操作指令;
APP操作模块,用于根据所述具体操作指令调用移动终端操作系统的应用程序编
程接口执行APP操作;
检测模块,用于根据所述APP检测请求进行APP检测。
一实施例中,该移动终端还包括:分辨率上传单元,用于将自身的屏幕分辨率上传
至所述web服务端。
为了实现上述目的,本发明实施例提供了一种移动终端APP远程检测方法,包括:
客户端通过所述web服务端向所述移动终端发送APP检测请求及APP操作指令,所
述移动终端与所述客户端远程连接;
所述客户端通过web服务端接收移动终端实时发送的移动终端实时画面,所述移
动终端实时画面中包含移动终端显示的测试结果画面。
为了实现上述目的,本发明实施例提供了一种客户端,包括:
信息发送单元,用于通过所述web服务端向所述移动终端发送APP检测请求及APP
操作指令,所述移动终端与所述客户端远程连接;
图像接收单元,用于客户端通过web服务端接收移动终端实时发送的移动终端实
时画面,所述移动终端实时画面中包含移动终端显示的测试结果画面。
为了实现上述目的,本发明实施例提供了一种移动终端APP远程检测系统,包括:
客户端、web服务器及移动终端,所述客户端通过所述web服务器与所述移动终端远程连接;
所述客户端接收移动终端实时发送的移动终端实时画面,所述客户端通过所述
web服务端向所述移动终端发送APP检测请求及APP操作指令;
所述移动终端通过web服务端远程接收客户端的APP检测请求及APP操作指令,所
述移动终端根据所述APP操作指令调用移动终端操作系统的应用程序编程接口执行APP操
作,并根据所述APP检测请求进行APP检测;
其中,所述移动终端实时画面中包含移动终端显示的测试结果画面。
本发明提供了一种全新的APP检测方式,利用本发明,可以进行APP远程检测,节省
时间及成本,提高检测效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现
有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可
以根据这些附图获得其他的附图。
图1为本发明实施例的移动终端APP远程检测系统的结构示意图;
图2为本发明实施例的移动终端APP远程检测方法流程图;
图3为本发明实施例的根据APP操作指令执行APP操作的方法流程图;
图4为本发明实施例的移动终端结构框图;
图5为本发明实施例的该检测单元的结构框图;
图6为本发明另一实施例的移动终端APP远程检测方法流程图;
图7为本发明实施例的客户端的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完
整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于
本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他
实施例,都属于本发明保护的范围。
图1为本发明实施例的移动终端APP远程检测系统的结构示意图,如图1所示,移动
终端APP远程检测系统包括:客户端、web服务器及移动终端,客户端通过web服务器与所述
移动终端远程连接。
一实施例中,客户端与移动终端远程连接的方式可以为同SOCKET连接,本发明不
以此为限。
客户端可以为PC,也可以为移动终端(如手机、PAD等),本发明仅以PC客户端为例
进行说明。移动终端可以为Android手机,iphone手机等,本发明仅以Android手机进行说
明。移动终端中安装了应用安全检测组件,包括用于APP检测的APP检测软件及脚本工具等。
具体实施时,移动终端向客户端实时发送的移动终端实时画面(图1中的数据上传
服务器),以使客户端可以在浏览器上显示移动终端实时画面。
一实施例中,移动终端可以采用多线程实时采集移动终端实时画面,并通过多线
程压缩采集到移动终端实时画面,这样可以提高图像传输效率。较佳地,可以采用多线程通
过离散余弦变换、Huffman编码或算术编码对采集的移动终端实时画面进行压缩。
图像在处理的过程每帧处理时间可能不一样,如果使用普通的用多线程进行图像
的传输,可能会导致后采集的图像先处理完成发送至客户端,这样客户端就不能正常显示
移动终端屏幕图像。为了解决该问题,一实施例中,本发明采取阻塞队列(Blocking Queue)
多线程操作方式向客户端实时发送的移动终端实时画面。使用阻塞队列多线程操作方式,
即便是后采集的图像先处理完成,也会等待先采集的图像处理完成后按照先进先出的顺序
传送至客户端,保证手机实时画面显示正常。
客户端可以远程在移动终端上安装待测试的APP,接收移动终端实时发送的移动
终端实时画面(图1中的接收呈现数据),用户通过浏览器可以操作及观看上述移动终端实
时画面。移动终端向客户端发送的移动终端实时画面的时间间隔很小,画面刷新频率很高,
不存在明显时间延迟,用户在浏览器上观看移动终端实时画面时,跟直接观看移动终端的
视觉效果一样。
用户通过浏览器上的移动终端实时画面,可以向操作真实手机一样进行操作,如
进行APP的拖拽、单击、双击及物理按键的点击。
需要对移动终端上安装待测试的APP进行测试时,可以在客户端打卡远程手机上
的APP测试软件,然后选择要测试的APP,加入APP测试软件的测试列表中,即向移动终端发
送检测APP的APP检测请求。需要注意的是,此时待测试的APP需要处于未启用状态。
向移动终端发送检测APP的APP检测请求之后,用户可以通过客户端操作待测试的
APP,即向移动终端发送APP操作指令(即图1中的发送操控指令),以检测APP使用时的敏感
行为。
一实施例中,APP操作指令包含:拖拽指令、单击指令、双击指令及物理按键指令等
具体操作指令。
移动终端可以将APP操作指令解析得到上述具体操作指令,根据得到的具体操作
指令,可以调用移动终端操作系统的应用程序编程接口执行APP操作,即响应客户端的APP
操作,检测APP使用时的敏感行为。
具体地,移动终端通过监听显示图像(移动终端实时画面)的交互事件取得用户操
作具体指令,例如单击图像=单击手机,双击=双击手机(双击和单机都是监听鼠标单机事
件,如果连续两次的单机事件没超过500毫秒可以认为是双击事件)。拖拽=屏幕图像按下
和抬起事件,拖拽距离等于按下抬起事件的长度。物理按键通过固定指令发送至被测设备
(用户在客户端通过鼠标或者触摸屏点击显示的按键,将通过具体的按键指令发送给移动
终端)。
一实施例中,在移动终端发送移动终端实时画面之前,移动终端首先需要将自身
的屏幕分辨率上传至web服务端,当用户进入操作页面时,客户端已获得该分辨率,客户端
显示的移动终端实时画面是按照移动终端的分辨率显示的,用户通过客户端在屏幕图像上
面操作的(x,y)坐标就是手机本身的坐标。
移动终端根据APP操作指令调用移动终端操作系统的应用程序编程接口执行APP
操作后,可以根据进行APP检测,测试APP使用时的敏感行为。
需要说明的是,客户端进行APP检测相关操作的整个过程中,终端都需要实时向客
户端实时发送的移动终端实时画面,该移动终端实时画面中包含移动终端显示的测试结果
画面(包括图1中的接收呈现数据)及客户端操作移动终端的整个过程的画面。
本发明提供了一种全新的APP检测方式,利用本发明,可以进行APP远程检测,节省
时间及成本,提高检测效率。
上述从移动终端APP远程检测系统的整体进行了说明,下面通过不同的实施例,从
移动终端侧及客户端侧分别进行说明。
图2为本发明实施例的移动终端APP远程检测方法流程图,如图2所示,该移动终端
APP远程检测方法包括:
S201:移动终端通过web服务端远程接收客户端的APP检测请求及APP操作指令,所
述移动终端与所述客户端远程连接;
S202:所述移动终端根据所述APP操作指令调用移动终端操作系统的应用程序编
程接口执行APP操作,并根据所述APP检测请求进行APP检测;
需要说明的是,图2中的箭头不用于限定步骤的顺序。
其中,所述移动终端通过所述web服务端向所述客户端实时发送的移动终端实时
画面,所述移动终端实时画面中包含移动终端显示的测试结果画面。
一实施中,移动终端可以采用多线程实时采集所述移动终端实时画面,并采用多
线程通过离散余弦变换、Huffman编码或算术编码对采集的移动终端实时画面进行压缩,然
后采取阻塞队列多线程操作方式向所述客户端实时发送的压缩的移动终端实时画面。
一实施例中,APP操作指令包含如下具体操作指令:拖拽指令、单击指令、双击指令
及物理按键指令,如图3所示,移动终端根据所述APP操作指令调用移动终端操作系统的应
用程序编程接口执行APP操作,包括:
S301:所述移动终端将所述APP操作指令解析得到具体操作指令;
S302:根据所述具体操作指令调用移动终端操作系统的应用程序编程接口执行
APP操作。
在移动终端发送移动终端实时画面之前,移动终端首先需要将自身的屏幕分辨率
上传至web服务端,当用户进入操作页面时,客户端已获得该分辨率,客户端显示的移动终
端实时画面是按照移动终端的分辨率显示的,用户通过客户端在屏幕图像上面操作的(x,
y)坐标就是手机本身的坐标。
本发明提供了一种全新的APP检测方式,利用本发明,可以进行APP远程检测,节省
时间及成本,提高检测效率。
基于与上述移动终端APP远程检测方法相同的发明构思,本申请提供一种移动终
端,如下面实施例所述。由于该移动终端解决问题的原理与移动终端APP远程检测方法相
似,因此该移动终端的实施可以参见移动终端APP远程检测方法的实施,重复之处不再赘
述。
图4为本发明实施例的移动终端结构框图,如图4所示,该移动终端包括:信息接收
单元401、检测单元402及图像发送单元403。
信息接收单元401用于通过web服务端远程接收客户端的APP检测请求及APP操作
指令,所述移动终端与所述客户端远程连接。
检测单元402用于根据所述APP操作指令调用移动终端操作系统的应用程序编程
接口执行APP操作,并根据所述APP检测请求进行APP检测;
图像发送单元403用于通过所述web服务端向所述客户端实时发送的移动终端实
时画面,移动终端实时画面中包含移动终端显示的测试结果画面。
一实施例中,该移动终端还包括:图像采集单元,用于采用多线程实时采集所述移
动终端实时画面,并采用多线程通过离散余弦变换、Huffman编码或算术编码对采集的移动
终端实时画面进行压缩。
一实施例中,所述图像发送单元403具体用于:采取阻塞队列向所述客户端实时发
送的所述移动终端实时画面。
一实施例中,所述APP操作指令包含如下具体操作指令:拖拽指令、单击指令、双击
指令及物理按键指令。如图5所示,该检测单元402还包括:
指令解析模块501,用于所述移动终端将所述APP操作指令解析得到具体操作指
令;
APP操作模块502,用于根据所述具体操作指令调用移动终端操作系统的应用程序
编程接口执行APP操作;
检测模块503,用于根据所述APP检测请求进行APP检测。
一实施例中,该移动终端还包括:分辨率上传单元,用于将自身的屏幕分辨率上传
至所述web服务端。
本发明提供了一种全新的APP检测方式,利用本发明,可以进行APP远程检测,节省
时间及成本,提高检测效率。
图6为本发明另一实施例的移动终端APP远程检测方法流程图,如图6所示,该移动
终端APP远程检测方法包括:
S601:客户端通过所述web服务端向所述移动终端发送APP检测请求及APP操作指
令,所述移动终端与所述客户端远程连接;
S602:所述客户端通过web服务端接收移动终端实时发送的移动终端实时画面,所
述移动终端实时画面中包含移动终端显示的测试结果画面。
需要说明的是,图6中的箭头不用于限定步骤的顺序。
利用本发明,可以进行APP远程检测,节省时间及成本,提高检测效率。
基于与上述移动终端APP远程检测方法相同的发明构思,本申请提供一种客户端,
如下面实施例所述。图7为本发明实施例的客户端的结构框图,如图7所示,该客户端包括:
信息发送单元701,用于通过所述web服务端向所述移动终端发送APP检测请求及
APP操作指令,所述移动终端与所述客户端远程连接.
图像接收单元702,用于客户端通过web服务端接收移动终端实时发送的移动终端
实时画面,所述移动终端实时画面中包含移动终端显示的测试结果画面。
利用本发明,可以进行APP远程检测,节省时间及成本,提高检测效率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序
产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实
施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机
可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产
品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程
图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流
程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序
指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产
生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实
现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特
定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计
算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一
个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例
的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,
依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内
容不应理解为对本发明的限制。