CN109683780A - 控制移动终端的方法、系统和被控终端 - Google Patents
控制移动终端的方法、系统和被控终端 Download PDFInfo
- Publication number
- CN109683780A CN109683780A CN201811601679.4A CN201811601679A CN109683780A CN 109683780 A CN109683780 A CN 109683780A CN 201811601679 A CN201811601679 A CN 201811601679A CN 109683780 A CN109683780 A CN 109683780A
- Authority
- CN
- China
- Prior art keywords
- terminal
- controlled terminal
- controlled
- cloud server
- controlling
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04806—Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
Abstract
本发明公开远程控制终端的方法、系统和被控终端。在该方法中,控制终端和被控终端安装有安卓系统及相同的应用软件。该方法包括如下步骤:被控终端实时获得该被控终端上应用软件的当前软件界面的截屏图片,将该截屏图片打包成数据包并通过云服务器转发该数据包给控制终端。被控终端的应用软件接收云服务器转发的数据包,从该数据包中获得控制指令。该控制指令基于控制终端从所述数据包中获得截屏图片后,用户在显示于控制终端的截屏图片上的操作而产生且包括操作动作和操作参数并由控制终端上的应用软件发送给云服务器。该被控终端上的应用软件从该控制指令中获得操作动作和操作参数并执行。该方法能在不受安卓系统权限限制的情况下很方便的实现远程控制。
Description
技术领域
本发明涉及安卓终端控制领域,尤其涉及基于云服务器控制移动终端的方法,还涉及控 制移动终端的系统和被控终端。
背景技术
在测绘行业,作业人员常常使用终端安装相应的应用软件实现所需的功能,比如,申请 人公司的SurveyMaster软件(应用软件)安装于终端(手簿)后,就能实现测量(点放样、 线放样、面积测量、静态测量)、行业测量(道路设计、道路放样、横断测量)等功能。在实际使用过程中,难免会出现SurveyMaster软件出现故障导致该软件无法使用的情况,现有技 术中,实现远程维护的方式是:用户通过电话联系技术支持人员,技术支持人员通过电话指 导用户排除故障,这种方式可能存在用户和技术支持人员之间讲述的内容不一致的情况,反 而不利于问题的解决,为了更方便的进行技术支持,对终端进行远程控制成为一种选择。
现有技术中,实现对Andorid终端的远程控制,主要有两种方式:第一种方式是运行于 安卓终端的软件有系统级别权限,第二种方式是通过ADB实现。要获得系统级别的权限,需 要Andorid(安卓)系统的定制,实际情况下,Andorid系统定制化的供应商众多,从应用软 件提供商的角度,要获得这种系统级别权限需要找每家供应商商谈以获得授权,很难实现; 从使用者的角度,购买Andorid设备具有随意性,因而,并不能确保其购买的Andorid设备 的Andorid系统已经被授予系统级别的权限,此种情况下,将导致远程控制功能无法使用, 使用者必须重新购买被授权的Andorid设备。通过ADB工具控制Andorid终端的方式需要 Andorid终端连接电脑后才能使用且该电脑是联网的,而测绘行业通常是在野外作业,这种方 式需要随身携带电脑,会给野外作业带来不便。
发明内容
本发明解决的问题是Andorid设备的远程控制中受Andorid系统的系统级别权限限制以 及通过ADB方式远程控制不方便的问题。
为解决上述问题,本发明提供一种控制终端的方法。在该方法中,控制终端和被控终端 安装有安卓系统及相同的应用软件,该方法包括如下步骤:被控终端实时获得该被控终端上 所述应用软件的当前软件界面的截屏图片,将该截屏图片打包成数据包,并通过云服务器转 发该截屏图片给控制终端;被控终端的应用软件接收所述云服务器转发的数据包,从该数据 包中获取控制指令,该控制指令基于控制终端从所述数据包中获得截屏图片后,用户在显示 于控制终端的所述截屏图片上的操作而产生且包括操作动作和操作参数并由控制终端上的应 用软件发送给所述云服务器,该被控终端上的所述应用软件从该控制指令中获得操作动作和 操作参数并执行。
在一种方案中,所述被控终端上的所述应用软件从该控制指令中获得操作动作和操作参 数并执行包括被控终端上的所述应用软件调用安卓系统的应用接口以使得所述应用软件执行 所述操作。
在一种方案中,所述被控终端接收控制终端发送的文本信息并显示,也向所述云服务器 发送文本信息并由云服务器转发该文本信息给所述控制终端,控制终端显示该文本信息。
在一种方案中,所述获得被控终端上所述应用软件的当前软件界面的截屏图片包括所述 应用软件调用安卓系统的应用接口,安卓系统通过该应用接口获得截屏参数并根据参数执行 截屏操作而获得所述截屏图片。
在一种方案中,所述控制终端显示所述截屏图片包括:控制终端上的所述应用软件调用 安卓系统的显示控件显示所述当前截屏图片。
在一种方案中,每一台所述控制终端通过Websocket连接于所述云服务器,每一台所述 被控终端通过TCP/IP连接于所述云服务器。
在一种方案中,所述云服务器通过控制终端与被控终端间的映射关系实现被控终端与控 制终端间的通信,该映射关系通过如下方式建立:建立被控终端与TCP标识TCPID和TCP 客户端TCP Client的映射关系包括:被控终端作为TCP客户端连接上云服务器,云服务器向 被控终端发送要求被控终端以一定频率向云服务器发送设备标识的指令,同时,云服务器获 得TCP标识TCPID并定义用于存储和解析被控终端的设备标识的数据结构,建立TCPID与 该数据结构之间的映射关系;云服务器根据TCPID和数据结构之间的映射关系将接收到的来 自被控终端的数据存于数据结构中并解析数据结构中的数据直到拿到设备标识,在获得设备 标识后,建立该被控终端与TCP客户端之间的映射MAP<SN,TCP Client>,也建立了TCP 标识TCPID与被控终端的映射关系MAP<TCPID,SN>;建立控制终端与WebsocketID和 websocket Client之间的映射关系包括:控制终端通过Websocket方式访问云服务器,建立该 控制终端与Websocket Client之间的映射Map<user,WebSocketClient>,基于该映射关系在获 得控制终端的用户标识后,建立控制终端与WebsocketID之间的映射关系Map<user, WebsocketID>;建立控制终端与被控终端的映射关系包括:在被控终端发送给服务器的指令 中包括控制终端的用户标识,或者,在控制终端发送给云服务器的指令中包括设备标识,所 述云服务器根据该用户标识和设备标识建立控制终端与被控终端的映射关系。
在一种方案中,所述操作动作是点击且操作参数是点击位置的坐标;或者,所述操作动 作是滑动且操作参数是滑动的起始坐标和终点坐标;或者,所述操作动作是缩放且所述操参 数包括缩放的坐标信息;或者,所述操作动作是长按且操作参数是按压位置的坐标及按压时 间。
在一种方案中,所述控制终端和被控终端均是手簿。
本发明还公开一种控制终端的系统,用于控制至少一个被控终端,该系统包括云服务器 和至少一个控制终端,其中,被控终端和控制终端均安装有安卓系统和相同的应用软件,所 述云服务器接收来自所述被控终端的应用转件发送的数据包,转发该该数据包给与发送该数 据包的被控终端相对应的控制终端,所述数据包包括该应用软件的当前软件界面的截屏图片。 所述控制终端上的应用软件从所述数据包中获得截屏图片并由安卓系统显示所述截屏图片, 还接收用户在显示的截屏图片上的操作而产生控制指令,该控制指令被打包成数据包所述控 制终端上的应用软件传输该数据包给所述云服务器,该控制指令包括操作动作和操作参数; 所述云服务器转发包括该控制指令数据包给相应的被控终端。
在一种方案中,所述控制终端上的应用软件调用安卓系统的显示控件显示所述当前截屏 图片。
在一种方案中,所述云服务器通过控制终端与被控终端间的映射关系实现被控终端与控 制终端间的通信,该映射关系通过如下方式建立:建立被控终端与TCP标识TCPID和TCP 客户端TCP Client的映射关系包括:被控终端作为TCP客户端连接上云服务器,云服务器向 被控终端发送要求被控终端以一定频率发送设备标识的指令,同时,云服务器获得TCP标识 TCPID并定义用于存储和解析被控终端的设备标识的数据结构,建立TCPID与该数据结构之 间的映射关系;云服务器根据TCPID和数据结构之间的映射关系将接收到的来自被控终端的 数据存于数据结构中并解析数据结构中的数据直到拿到设备标识,在获得设备标识后,建立 该被控终端与TCP客户端之间的映射MAP<SN,TCP Client>,也建立了TCP标识TCPID与 被控终端的映射关系MAP<TCPID,SN>;建立控制终端与WebsocketID和Websocket Client 之间的映射关系包括:控制终端通过Websocket方式访问云服务器,建立该控制终端与 Websocket Client之间的映射Map<user,WebSocket Client>,基于该映射关系在获得控制终端的 用户标识后,建立控制终端与WebsocketID之间的映射关系Map<user,WebsocketID>;建立控 制终端与被控终端的映射关系包括:在被控终端发送给服务器的指令中包括控制终端的用户 标识,或者,在控制终端发送给云服务器的指令中包括设备标识,所述云服务器根据该用户 标识和设备标识建立控制终端与被控终端的映射关系。
在一种方案中,所述操作动作是点击且操作参数是点击位置的坐标;或者,所述操作动 作是滑动且操作参数是滑动的起始坐标和终点坐标;或者,所述操作动作是缩放且所述操参 数包括缩放的坐标信息;或者,所述操作动作是长按且操作参数是按压位置的坐标及按压时 间。
在一种方案中,所述控制终端是手簿。
本发明还提供一种被控终端,该被控终端安装有安卓系统和运行于该安卓系统的应用软 件,其中,被控终端实时获得该被控终端上所述应用软件的当前软件界面的截屏图片,将该 截屏图片打包并通过云服务器转发该数据包给控制终端;被控终端接收控制终端通过所述云 服务器转发的数据包,从该数据包中获得控制指令,该控制指令基于控制终端从所述数据包 中获得截屏图片后,用户在显示于控制终端的所述截屏图片上的操作而产生且包括操作动作 和操作参数并由控制终端上的应用软件发送给云服务器,该被控终端上的所述应用软件从该 控制指令中获得操作动作和操作参数并执行。
在一种方案中,所述被控终端上的所述应用软件从该控制指令中获得操作动作和操作参 数并执行包括:被控终端上的所述应用软件调用安卓系统的应用接口以使得所述应用软件执 行所述操作。
在一种方案中,所述被控终端接收控制终端发送的文本信息并显示,也向所述云服务器 发送文本信息并由云服务器转发该文本信息给所述控制终端,该控制终端显示接收到的文本 信息。
在一种方案中,所述获得被控终端上所述应用软件的截屏图片包括:所述应用软件调用 安卓系统的应用接口,安卓系统通过该应用接口获得截屏参数并根据该截屏参数执行截屏操 作而获得所述截屏图片。
在一种方案中,该被控终端是手簿。
与现有技术相比,本发明具有以下优点:
1、本发明通过被控终端上的应用软件对所述应用软件的当前软件界面进行截屏(比如, 调用安卓系统的应用接口后,安卓系统通过该应用接口获得截屏参数并根据参数执行截屏操 作而获得截屏图片),将包括该截屏图片的数据包发送给云服务器并经云服务器转发给控制终 端,控制终端上的所述应用软件从数据包中获得截屏图片并调用安卓系统的显示控件显示所 述截屏图片,接收用户在截屏图片上的操作而将该操作生成控制指令,将该控制指令打包成, 发送包括控制指令的数据包给云服务器并经云服务器转发该数据包给所述被控终端,被控终 端上的应用软件从数据包中获得控制指令后调用安卓系统的应用接口执行所述控制指令,在 上述过程中,显示控件和应用接口都是任意的安卓系统具备的且该应用软件由应用软件提供 商开发,所以,任意两台安卓终端(不论安卓系统是定制的还是非定制的)在双方安装上相 同的应用软件后均可以实现远程控制,相较于现有技术,不用获得系统级别权限以及不用随 身携带电脑,使用方便。
2、云服务器只是根据所述映射关系转发指令和图片,处理在被控终端或者控制终端上完 成,云服务器的处理压力小。
3、云服务器通过前述映射关系转发指令和图片且该映射关系被存储于服务器的数据库, 这样,即使任意一台被控终端或者控制终端掉线后,云服务器也根据存储的映射关系恢复重 连,提高了云服务器的容错能力。
4、云服务器在拿到被控终端或者控制终端的设备标识后,不再解析被控终端或者控制终 端发送的数据,仅实现转发功能,由此,该云服务器处理压力低。
5.、被控终端通过TCP方式连接于云服务器,而控制终端通过Websocket方式连接于云 服务器,由此,实现全双工通信且能满足多种类型设备接入到云服务器,节省信息资源。
附图说明
图1是本发明被控终端和控制终端与云服务器连接的示意图;
图2a和图2b是实现本发明的安装于安卓系统的应用软件的功能模块图;
图3是本发明控制终端控制被控终端的一种具体实施方式的流程图;
图4是被控终端上的应用软件的一幅截屏图片;
图5是被控终端执行控制终端在图4所示的截屏图片上产生的控制指令的执行结果
图6是对应用软件的当前界面执行长按操作获得的截屏图片。
具体实施方式
为详细说明本发明的技术内容、构造特征、所达成目的及功效,下面将结合实施例并配 合附图予以详细说明。
请参阅图1和图2,本发明中控制移动终端的系统用于控制至少一个被控终端1,包括云 服务器2和至少一个控制终端3。被控终端1和控制终端3均是安装有安卓操作系统的设备, 比如是安卓手机、安卓平板等安卓设备。在测绘行业中,被控终端1和控制终端3可以为手 簿。被控终端1和控制终端3上安装的这种安卓操作系统可以是供应商提供的定制的安卓系 统,也可以是非定制的安卓系统。被控终端1和控制终端3除了具备安卓系统外,还安装有 同一款应用软件,以实现控制终端3通过该应用软件控制被控终端1上的所述应用软件。所 述应用软件比如是申请人研发的SurveyMaster等。
请继续参阅图1和图2,所述云服务器2用于实现被控终端1和控制终端3之间的数据 或者控制指令的交互,比如,转发被控终端1需要传输给控制终端3的截屏图片或者转发控 制终端3需要传输给被控终端1的控制指令。所述云服务器2内存储有被控终端1和控制终 端3的映射关系以使得控制终端3与被控终端1实现一对一的控制或者一对多的控制。作为 一种实现方式,所述云服务器2内开始不存储被控终端1和控制终端3之间的对应关系,在 被控终端1和控制终端3均连接于云服务器2后,该云服务器2接收控制终端3或者被控终端1的请求而建立被控终端1和控制终端3之间的映射关系,所述请求至少包括被控终端的设备标识和控制终端的设备标识,这种实施方式的一种具体过程如下:
S1、建立被控终端1与TCP标识TCPID和TCP Client的映射关系,步骤如下:被控终端1作为TCP客户端连接于云服务器2,云服务器2获取连接,并向被控终端1发送要求被 控终端1以一定频率向云服务器2发送唯一设备标识的指令,同时,获得TCP标识TCPID 并创建一个用来解析和保存设备标识的数据结构,比如,定义为Dataparser,建立TCPID与 数据结构之间的映射关系Map<TCPID,DataParser>。云服务器2根据映射关系Map<TCPID,DataParser>将接收到的来自被控终端1的原始数据存储于数据结构DataParser中并解析DataParser中的数据,直到拿到设备标识。在拿到设备标识后,云服务器2向被控终端1发送关闭发送设备标识的指令,同时,建立该被控终端与TCP客户端之间的映射MAP<SN,TCPClient>,也建立TCP标识TCPID与被控终端的映射关系MAP<TCPID,SN>。通过映射关 系<TCPID,SN>就可以得知那台被控终端下线,因为不存在上述映射关系的被控终端即为 下线的被控终端
S2、建立控制终端3与云服务器2的Websocket client和WebsocketID的映射关系,步骤 如下:在控制终端通过Websocket方式与所述云服务器建立连接后,云服务器获取该控制终 端唯一的用户标识User,比如,用户标识是登录该控制终端的用户名。该用户标识只要能唯 一标识控制终端即可,可以用任意一种方式。然后,建立了该控制终端与Websocket Client 之间的映射MAP<User,WebSocket Client>,通过该映射关系,云服务器向对应的控制终端 发送报文,供用户查看,同时,云服务器建立控制终端与WebsocketID之间的映射关系 MAP<WebSocketID,User>。通过映射关系<WebSocketID,User>就可以知道哪个控制终端/用户 下线了,因为,不存在上述映射关系的用户终端即为下线的被控终端。
S3、根据被控终端1或者控制终端3的请求指令建立被控终端1和控制终端3的映射关 系,步骤如下:在被控终端1和控制终端3连接于所述云服务器2后,在被控终端向控制终端发送指令的情况下,该指令包括控制终端的用户标识,再根据控制终端与WebsocketID和Websocket Client的前述映射关系,云服务器2能建立被控终端和控制终端的映射关系<User, SN>;在控制终端向被控终端发送指令的情况下,该指令包括设备标识,云服务器在解析到 设备标识后,再结合被控终端与TCPID和TCP Client的前述映射关系而建立被控终端1和控 制终端3的映射关系MAP<User,SN>。建立前述映射关系后,该映射关系被存储于云服务 器的数据库内。
通过前述映射关系及所述云服务器2的数据库存储所述映射关系的优点如下:在被控终 端1或者控制终端3因意外情况下线(比如,网络不好导致设备下线)或者系统宕机,在该 被控终端1和/或控制终端3重新连接到云服务器2后,云服务器2能够根据设备标识和/或用 户标识从数据库中查找到该映射关系并基于该映射关系重新建立被控终端1和控制终端3之 间的连接,由此,提高了容错能力。
在上述控制系统中,被控终端1通过TCP方式连接于云服务器2且控制终端3通过Websocket方式连接于所述云服务器2,不限于此种方式,比如,被控终端1和控制终端3均通过TCP连接于所述云服务器2或者均通过socket连接于所述云服务器2。
请参阅图2a和图2b,安装于被控终端1和控制终端3上的所述应用软件4相同,至少包括如图2a和图2b所示的功能模块,需要说明的是,此处只示意出与该远程控制相关联的一些功能模块,其他为实现特定功能的模块未示意出。所述的特定功能模块对于SuverMaster 来说,比如是实现测量功能、点校正功能等的模块。如图2a和2b所示,所述应用软件4包 括截屏单元41、发送单元(42a/42b)、接收单元(43a/43b)、解析单元(44a/44b)、侦测单元 45和指令生成单元46。请参阅图2a,所述应用软件4运行于被控终端1时,实现远程控制 的模块包括截屏单元41、发送单元42a、接收单元43a和解析单元44a。请参阅图2b,所述 应用软件运行于控制终端3实现远程控制功能的模块包括发送单元42b、接收单元43b、解析 单元44b、侦测单元45和指令生成单元46。
请参阅图1至图5,以上述被控终端1和控制终端3为测量行业中的手簿且该手簿中安 装的应用软件是SurveyMaster为例,说明上述远程控制过程如下:
S1、在依据前述映射关系使得被控终端1和控制终端3建立连接后,被控终端(被控手 簿)1在需要远程控制(协助是控制的一种)时,被控终端(被控手簿)1的应用软件4的截屏单元41根据截屏频率调用安卓系统的应用接口,通过该应用接口获得截屏参数,安卓系统 根据截屏参数执行截屏操作而获得截屏图片(该截屏图片如图4所示)。所述截屏参数包括截 屏的大小(长和宽)。所述截屏频率是调用安卓系统应用接口的时间间隔。获得截屏图片后将 该截屏图片打包成数据包,随后,该应用软件4的发送单元42a发送该数据包给所述云服务 器2。在该步骤中,截屏操作根据所述截屏频率是持续进行的,所述截屏图片的传输也是持 续进行的。
S2、所述服务器2基于所述映射关系转发该数据包至控制终端3(控制手簿);
S3、控制终端3(控制手簿)上的应用软件4的接收单元43b接收该数据包,随后,传输该数据包给解析单元44b。解析单元44b解析该数据包后得到截屏图片,然后调用安卓系统的显示控件(比如,ImageView控件)以使得在控制终端3的屏幕上显示所述截屏图片。 一幅所述截屏图片在控制终端3上的显示效果如图4所示。显示所述截屏图片后,应用软件 4的侦测单元45实时对安卓系统的应用接口进行侦测,在侦测到用户对所显示的截屏图片的操作的情况下,获得该操作并将该操作传输给指令生成单元46。所述操作包括操作动作和操 作参数。指令生成单元46在接收到所述操作后,将所述操作动作和操作参数封装成控制指令。 该控制指令的格式比如是操作动作+操作参数+结束符,将该控制指令打包成数据包。控制终 端3上的应用软件4的发送单元42b将包括所述控制指令的数据包发送给云服务器2。
S4、所述云服务器2根据控制终端(控制手簿)和被控终端(被控手簿)之间映射关系 转发该包括控制指令的数据包至所述被控终端(被控手簿)。
S5、被控终端(被控手簿)上的应用软件4通过接收单元43a接收所述包括控制指令的 数据包。解析单元44a解析数据包以获得该控制指令,从该控制指令中获得用户对截屏图片 的操作并调用安卓系统的应用接口(API接口)以使得安卓系统执行该操作,比如,使用反 射直接调用injectInputEvent方法执行该操作,这种效果与用户在被控终端上执行该操作一样。
上述操作可以是点击、滑动、缩放、长按等。下面以点击、滑动、缩放和长按为例且着 重从控制手簿上处理截屏图片开始说明前述操作,其他操作以此类似,不再赘述。
a、以图4为例说明该操作是点击的情况,此种情况下,控制终端3上的应用软件4的指 令生成单元46所生成的控制指令中的操作动作是点击,操作参数是点击位置的坐标(在屏幕 上的坐标),比如,点击如图4所示的“任务管理”,该点击动作和该“任务管理”在该屏幕 上的坐标被封装成所述控制指令,将该控制指令打包成数据包。被控终端(被控手簿)的应 用软件4的解析单元44a解析所述数据包,获得操作动作(点击)和操作参数(点击位置的坐标),调用安卓系统的应用接口(API接口)以使得安卓系统运行所述应用软件执行该点击操作,得到操作结果,该操作结果如图5所示。这种效果与用户在被控终端1上点击所述应用软件的“任务管理”所产生的效果一样。
b、所述操作可以是滑动,此种情况下,控制终端3上的应用软件4的指令生成单元46 所生成的控制指令中的操作动作是滑动,操作参数是滑动的起始坐标和终点坐标。被控终端 (被控手簿)的应用软件4的解析单元44a解析所述控制指令,获得操作动作(滑动)和操 作参数(起始坐标和终点坐标),调用安卓系统的应用接口(API接口)以使得安卓系统运行 所述应用软件执行该滑动操作,得到操作结果。
c、所述操作可以是缩放,此种情况下,控制终端3上的应用软件4的指令生成单元46 所生成的控制指令中的操作动作是缩放,操作参数包括缩放的坐标信息,与前述滑动过程类 似,被控终端的应用软件4的解析单元44a解析所述控制指令以获得所述操作动作和操作参 数并调用安卓系统的应用接口以使得安卓系统运行所述应用软件4执行所述缩放操作。
d、所述操作也可以是长按。长按操作的过程与前述过程一样,在此不再赘述。
在实际过程中,一个完整的远程控制流程的操作至少包括将上述点击操作、滑动操作和 缩放、长按操作之一,比如,可以仅仅是点击操作,也可以是点击操作和长按操作的组合, 点击操作如图4和图5所示,长按操作如图6所示。根据实际情况将上述操作进行组合即可, 当然,基于本发明的技术思路,也不局限于上述操作。只要能在被控终端(被控手簿)上完 成的所有操作都可以通过截屏的方式获得截屏图片,并通过上述方式传输在控制终端(控制 手簿)上,在控制终端(控制手簿)上显示并产生所述控制指令,最终由被控终端的应用软 件解析该控制指令并调用该安卓系统的应用接口以使得所述应用软件执行所述控制指令,从 而,完成整个协助过程。
上述方案中,控制手簿3向云服务器2发送控制指令,技术人员也可以理解,控制手簿 3也可以向云服务器2发送文本,比如“关闭XX软件”之类。云服务器2转发文本给被控 手簿1。被控手簿显示该文本,相应的,也可以由被控终端1向云服务器2传输文本并经过 云服务器转发后该文本在控制终端上显示。通过传输文本这种方式,实现对话,进一步帮助 技术支持人员与用户之间的沟通。
根据前述远程控制系统的技术思路,本发明还提供远程控制移动终端的方法。在该方法 中,控制终端和被控终端安装有安卓系统及相同的应用软件,该方法包括如下步骤:被控终 端实时获得该被控终端上所述应用软件的当前软件界面的截屏图片,将该截屏图片打包成数 据包并通过云服务器转发该数据包给控制终端。被控终端的应用软件接收所述云服务器转发 的数据包,从该数据包中获得控制指令,该控制指令基于控制终端从所述数据包中获得截屏 图片后,用户在显示于控制终端的所述截屏图片上的操作而产生且包括操作动作和操作参数 并由控制终端上的应用软件发送给云服务器,该被控终端上的所述应用软件从该控制指令中 获得操作动作和操作参数并执行。
在一种方案中,所述被控终端上的所述应用软件从该控制指令中获得操作动作和操作参 数并执行包括:被控终端上的所述应用软件调用安卓系统的应用接口以使得所述应用软件执 行所述操作。
在一种方案中,所述被控终端接收控制终端发送的文本信息并显示,也向所述云服务器 发送文本信息并由云服务器转发该文本信息给所述控制终端,控制终端显示所述文本信息。
在一种方案中,所述获得被控终端上所述应用软件的当前软件界面的截屏图片包括:所 述应用软件调用安卓系统的应用接口,安卓系统通过该应用接口获得截屏参数并根据该参数 执行截屏操作而获得所述截屏图片。
在一种方案中,所述控制终端显示所述截屏图片包括:控制终端上的应用软件调用安卓 系统的显示控件显示所述当前截屏图片。
在一种方案中,每一台所述控制终端通过Websocket连接于所述云服务器,每一台所述 被控终端通过TCP/IP连接于所述服务器。
在一种方案中,所述云服务器通过控制终端与被控终端间的映射关系实现被控终端与控 制终端间的通信,该映射关系通过如下方式建立:建立被控终端与TCP标识TCPID和TCP 客户端TCP Client的映射关系包括:被控终端作为TCP客户端连接上云服务器,云服务器向 被控终端发送要求被控终端以一定频率向云服务器发送设备标识的指令,同时,云服务器获 得TCP标识TCPID并定义用于存储和解析被控终端的设备标识的数据结构,建立TCPID与 该数据结构之间的映射关系;云服务器根据TCPID和数据结构之间的映射关系将接收到的来 自被控终端的数据存于数据结构中并解析数据结构中的数据直到拿到设备标识,在获得设备 标识后,建立该被控终端与TCP客户端之间的映射MAP<SN,TCP Client>,也建立了TCP 标识TCPID与被控终端之间的映射关系MAP<TCPID,SN>;建立控制终端与WebsocketID 和Websocket Client之间的映射关系包括:控制终端通过Websocket方式访问云服务器,建立 该控制终端与Websocket Client之间的映射Map<user,WebSocketClient>,基于该映射关系在 获得控制终端的用户标识后,建立控制终端与WebsocketID之间的映射关系Map<user, WebsocketID>;建立控制终端与被控终端的映射关系包括:在被控终端发送给服务器的指令 中包括控制终端的用户标识,或者,在控制终端发送给云服务器的指令中包括设备标识,所 述云服务器根据该用户标识和设备标识建立控制终端与被控终端的映射关系。
在一种方案中,所述操作动作是点击且操作参数是点击位置的坐标;或者,所述操作动 作是滑动且操作参数是滑动的起始坐标和终点坐标;或者,所述操作动作是缩放且所述操参 数是缩放的起始坐标和终点坐标;或者,所述操作动作是长按且操作参数是按压位置的坐标 及按压时间。
Claims (19)
1.控制移动终端的方法,其特征是,控制终端和被控终端安装有安卓系统及相同的应用软件,该方法包括如下步骤:
被控终端实时获得被控终端上所述应用软件的当前软件界面的截屏图片,将该截屏图片打包成数据包,并通过云服务器转发该数据包给控制终端;
被控终端的应用软件接收所述云服务器转发的数据包,从该数据包中获得控制指令,该控制指令基于控制终端从所述数据包中获得截屏图片后,用户在显示于控制终端的所述截屏图片上的操作而产生且包括操作动作和操作参数并由控制终端上的应用软件发送给所述云服务器,该被控终端上的所述应用软件从该控制指令中获得操作动作和操作参数并执行。
2.根据权利要求1所述的控制移动终端的方法,其特征是,所述被控终端上的所述应用软件从该控制指令中获得操作动作和操作参数并执行包括:被控终端上的所述应用软件调用安卓系统的应用接口以使得所述应用软件执行所述操作。
3.根据权利要求1所述的控制移动终端的方法,其特征是,所述被控终端接收控制终端发送的文本信息并显示,也向所述云服务器发送文本信息并由云服务器转发该文本信息给所述控制终端,该控制终端显示该文本信息。
4.根据权利要求1所述的控制移动终端的方法,其特征是,所述获得被控终端上所述应用软件的当前软件界面的截屏图片包括:所述应用软件调用安卓系统的应用接口,安卓系统通过该应用接口获得截屏参数并根据参数执行截屏操作而获得所述截屏图片。
5.根据权利要求1所述的控制移动终端的方法,其特征是,所述控制终端显示所述截屏图片包括:控制终端上的所述应用软件调用安卓系统的显示控件显示所述截屏图片。
6.根据权利要求1所述的控制移动终端的方法,其特征是,每一台所述控制终端通过Websocket连接于所述云服务器,每一台所述被控终端通过TCP/IP连接于所述服务器。
7.根据权利要求6所述的控制移动终端的方法,其特征是,所述云服务器通过控制终端与被控终端间的映射关系实现被控终端与控制终端间的通信,该映射关系通过如下方式建立:
建立被控终端与TCP标识TCPID和TCP客户端TCP Client的映射关系包括:被控终端作为TCP客户端连接上云服务器,云服务器向被控终端发送要求被控终端以一定频率向云服务器发送设备标识的指令,同时,云服务器获得TCP标识TCPID并定义用于存储和解析被控终端的设备标识的数据结构,建立TCPID与该数据结构之间的映射关系;云服务器根据TCPID和数据结构之间的映射关系将接收到的来自被控终端的数据存于数据结构中并解析数据结构中的数据直到拿到设备标识,在获得设备标识后,建立该被控终端与TCP客户端之间的映射MAP<SN,TCP Client>,也建立了TCP标识TCPID与被控终端的映射关系MAP<TCPID,SN>;
建立控制终端与WebsocketID和Websocket Client之间的映射关系包括:控制终端通过Websocket方式访问云服务器,建立该控制终端与Websocket Client之间的映射Map<user,WebSocket Client>,也建立控制终端与WebsocketID之间的映射关系Map<user,WebsocketID>;
建立控制终端与被控终端的映射关系包括:在被控终端发送给服务器的指令中包括控制终端的用户标识,或者,在控制终端发送给云服务器的指令中包括设备标识,所述云服务器根据该用户标识和设备标识建立控制终端与被控终端的映射关系。
8.根据权利要求1至7中任何1项所述的控制移动终端的方法,其特征是,所述操作动作是点击且操作参数是点击位置的坐标;或者,所述操作动作是滑动且操作参数是滑动的起始坐标和终点坐标;或者,所述操作动作是缩放且所述操参数包括缩放的坐标信息;或者,所述操作动作是长按且操作参数是按压位置的坐标及按压时间。
9.根据权利要求1至7中任何1项所述的控制移动终端的方法,其特征是,所述控制终端和被控终端均是手簿。
10.控制终端的系统,用于控制至少一个被控终端,其特征是,包括云服务器和至少一个控制终端,其中,被控终端和控制终端均安装有安卓系统和相同的应用软件,所述云服务器接收来自所述被控终端的应用转件发送的数据包,转发该数据包给与发送数据包的被控终端相对应的控制终端,所述数据包包括该应用软件的当前软件界面的截屏图片;
所述控制终端上的应用软件从所述数据包中获得所述截屏图片并由安卓系统显示所述截屏图片,还接收用户在显示的截屏图片上的操作而产生控制指令,该控制指令被打包成数据包,所述控制终端上的应用软件传输该数据包给所述云服务器,该控制指令包括操作动作和操作参数;
所述云服务器转发该包括控制指令的数据包给相应的被控终端。
11.根据权利要求10所述的控制终端的系统,其特征是,所述控制终端上的所述应用软件调用安卓系统的显示控件显示所述截屏图片。
12.根据权利要求10所述的控制终端的系统,其特征是,所述云服务器通过控制终端与被控终端间的映射关系实现被控终端与控制终端间的通信,该映射关系通过如下方式建立:
建立被控终端与TCP标识TCPID和TCP客户端TCP Client的映射关系包括:被控终端作为TCP客户端连接上云服务器,云服务器向被控终端发送要求被控终端以一定频率向云服务器发送设备标识的指令,同时,云服务器获得TCP标识TCPID并定义用于存储和解析被控终端的设备标识的数据结构,建立TCPID与该数据结构之间的映射关系;云服务器根据TCPID和数据结构之间的映射关系将接收到的来自被控终端的数据存于数据结构中并解析数据结构中的数据直到拿到设备标识,在获得设备标识后,建立该被控终端与TCP客户端之间的映射MAP<SN,TCP Client>,也建立了TCP标识TCPID与被控终端之间的映射关系MAP<TCPID,SN>;
建立控制终端与WebsocketID和Websocket Client之间的映射关系包括:控制终端通过Websocket方式访问云服务器,建立该控制终端与Websocket Client之间的映射Map<user,WebSocket Client>,基于该映射关系在获得控制终端的用户标识后,建立控制终端与WebsocketID之间的映射关系Map<user,WebsocketID>;
建立控制终端与被控终端的映射关系包括:在被控终端发送给服务器的指令中包括控制终端的用户标识,或者,在控制终端发送给云服务器的指令中包括设备标识,所述云服务器根据该用户标识和设备标识建立控制终端与被控终端的映射关系。
13.根据权利要求10至12中任1项所述的控制终端的系统,其特征是,所述操作动作是点击且操作参数是点击位置的坐标;或者,所述操作动作是滑动且操作参数是滑动的起始坐标和终点坐标;或者,所述操作动作是缩放且所述操参数包括缩放的坐标信息;或者,所述操作动作是长按且操作参数是按压位置的坐标及按压时间。
14.根据权利要求13所述的控制终端的系统,其特征是,所述控制终端是手簿。
15.被控终端,其特征是,该被控终端安装有安卓系统和运行于该安卓系统的应用软件,其中,被控终端实时获得该被控终端上所述应用软件的当前软件界面的截屏图片,将该数据包打包并通过云服务器转发该数据包给控制终端;
被控终端接收所述云服务器转发的数据包,从该数据包中获得控制指令,该控制指令基于控制终端从所述数据包中获得截屏图片后,用户在显示于控制终端的所述截屏图片上的操作而产生且包括操作动作和操作参数并由控制终端上的应用软件发送给云服务器,该被控终端上的所述应用软件从该控制指令中获得操作动作和操作参数并执行。
16.根据权利要求15所述的被控终端,其特征是,该被控终端上的所述应用软件从该控制指令中获得操作动作和操作参数并执行包括:被控终端上的所述应用软件调用安卓系统的应用接口以使得所述应用软件执行所述操作。
17.根据权利要求15所述的被控终端,其特征是,所述被控终端接收控制终端发送的文本信息并显示,也向所述云服务器发送文本信息并由云服务器转发该文本信息给所述控制终端,该控制终端显示接收到的文本信息。
18.根据权利要求15所述的被控终端,其特征是,所述获得被控终端上所述应用软件的截屏图片包括所述应用软件调用安卓系统的应用接口,安卓系统通过该应用接口获得截屏参数并根据该截屏参数执行截屏操作而获得所述截屏图片。
19.根据权利要求15至18中任何1项所述的被控终端,其特征是,该被控终端是手簿。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811601679.4A CN109683780A (zh) | 2018-12-26 | 2018-12-26 | 控制移动终端的方法、系统和被控终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811601679.4A CN109683780A (zh) | 2018-12-26 | 2018-12-26 | 控制移动终端的方法、系统和被控终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109683780A true CN109683780A (zh) | 2019-04-26 |
Family
ID=66189357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811601679.4A Pending CN109683780A (zh) | 2018-12-26 | 2018-12-26 | 控制移动终端的方法、系统和被控终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109683780A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112579244A (zh) * | 2021-02-25 | 2021-03-30 | 全时云商务服务股份有限公司 | 在移动终端截取远程桌面中区域图片的方法及系统 |
CN114553853A (zh) * | 2022-01-27 | 2022-05-27 | 福州汇思博信息技术有限公司 | 一种远程控制应用的方法及终端 |
CN114267358B (zh) * | 2021-12-17 | 2023-12-12 | 北京百度网讯科技有限公司 | 音频处理方法、装置、设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103763392A (zh) * | 2014-01-29 | 2014-04-30 | 百度在线网络技术(北京)有限公司 | 设备的控制方法、装置及系统 |
CN104348878A (zh) * | 2013-08-06 | 2015-02-11 | 好看科技(深圳)有限公司 | 用于远程控制移动终端的方法、装置、移动终端及系统 |
CN105357240A (zh) * | 2014-08-21 | 2016-02-24 | 中兴通讯股份有限公司 | 远程协助的控制方法及装置 |
CN105493621A (zh) * | 2014-08-04 | 2016-04-13 | 华为技术有限公司 | 终端、服务器及终端控制方法 |
CN105812421A (zh) * | 2014-12-30 | 2016-07-27 | Tcl集团股份有限公司 | 一种基于Android平台的远程控制方法及装置 |
CN105915527A (zh) * | 2016-05-16 | 2016-08-31 | 北京奇虎科技有限公司 | 一种控制移动终端的方法和装置、移动终端 |
CN106412617A (zh) * | 2016-09-08 | 2017-02-15 | 广州华多网络科技有限公司 | 远程调试控制方法及装置 |
CN107203432A (zh) * | 2017-05-27 | 2017-09-26 | 网易(杭州)网络有限公司 | 一种远程控制安卓设备的方法和系统 |
CN108206858A (zh) * | 2016-12-16 | 2018-06-26 | 杭州零零科技有限公司 | 一种远程控制方法及系统 |
-
2018
- 2018-12-26 CN CN201811601679.4A patent/CN109683780A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104348878A (zh) * | 2013-08-06 | 2015-02-11 | 好看科技(深圳)有限公司 | 用于远程控制移动终端的方法、装置、移动终端及系统 |
CN103763392A (zh) * | 2014-01-29 | 2014-04-30 | 百度在线网络技术(北京)有限公司 | 设备的控制方法、装置及系统 |
CN105493621A (zh) * | 2014-08-04 | 2016-04-13 | 华为技术有限公司 | 终端、服务器及终端控制方法 |
CN105357240A (zh) * | 2014-08-21 | 2016-02-24 | 中兴通讯股份有限公司 | 远程协助的控制方法及装置 |
CN105812421A (zh) * | 2014-12-30 | 2016-07-27 | Tcl集团股份有限公司 | 一种基于Android平台的远程控制方法及装置 |
CN105915527A (zh) * | 2016-05-16 | 2016-08-31 | 北京奇虎科技有限公司 | 一种控制移动终端的方法和装置、移动终端 |
CN106412617A (zh) * | 2016-09-08 | 2017-02-15 | 广州华多网络科技有限公司 | 远程调试控制方法及装置 |
CN108206858A (zh) * | 2016-12-16 | 2018-06-26 | 杭州零零科技有限公司 | 一种远程控制方法及系统 |
CN107203432A (zh) * | 2017-05-27 | 2017-09-26 | 网易(杭州)网络有限公司 | 一种远程控制安卓设备的方法和系统 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112579244A (zh) * | 2021-02-25 | 2021-03-30 | 全时云商务服务股份有限公司 | 在移动终端截取远程桌面中区域图片的方法及系统 |
CN112579244B (zh) * | 2021-02-25 | 2021-06-18 | 全时云商务服务股份有限公司 | 在移动终端截取远程桌面中区域图片的方法及系统 |
CN114267358B (zh) * | 2021-12-17 | 2023-12-12 | 北京百度网讯科技有限公司 | 音频处理方法、装置、设备及存储介质 |
CN114553853A (zh) * | 2022-01-27 | 2022-05-27 | 福州汇思博信息技术有限公司 | 一种远程控制应用的方法及终端 |
CN114553853B (zh) * | 2022-01-27 | 2023-11-10 | 福建汇思博数字科技有限公司 | 一种远程控制应用的方法及终端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109683780A (zh) | 控制移动终端的方法、系统和被控终端 | |
CN103106102A (zh) | 一种web应用程序的运行方法及移动终端 | |
CN105184945B (zh) | 一种排队取号的方法、装置及系统和服务端 | |
CN104579822A (zh) | 基于Http协议的移动应用自动化性能测试系统及方法 | |
CN104980898A (zh) | 一种信息推送方法、系统及设备 | |
GB2528607A (en) | Monitoring system, facility management device, monitoring method, and program | |
CN103152370A (zh) | 一种物联网业务网关系统及应用方法 | |
CN110913362B (zh) | 通过客户端与测试设备来实现无线信号测试的方法和装置 | |
CN106357654B (zh) | 远程过程调用方法、装置及通信系统 | |
CN109696867A (zh) | 用户终端处理gnss设备数据的方法、用户终端和gnss设备管理系统 | |
KR20080081686A (ko) | 모바일 인스턴트 메시징 시스템 및 위치정보 제공 방법 | |
CN109634856B (zh) | 基于云服务的iOS智能终端远程真机调试系统及方法 | |
CN108737337B (zh) | 设备处理方法、装置、服务器及系统 | |
CN105306338B (zh) | 消息提醒方法及装置 | |
CN103036911A (zh) | 业务数据处理系统和业务数据处理方法 | |
CN110868447A (zh) | 一种多火箭并发测控系统及其工作方法 | |
CN113691937B (zh) | 用于确定位置信息的方法、云手机和终端设备 | |
US20190042812A1 (en) | Location based situation awareness system and method thereof | |
CN102457577A (zh) | 自动建立设备语音拨号特征的并行数据连接的系统和方法 | |
CN105245535A (zh) | 多客户端统一管理方法及系统 | |
CN102025773B (zh) | 一种拼接墙互联控制方法及其装置 | |
CN106603257B (zh) | 一种确定工位与交换机端口的关联关系的方法 | |
CN108337300B (zh) | 一种应用于窄带物联网的人机接口通信方法和系统 | |
CN103647812A (zh) | 一种跨终端设备进行图片显示的方法及装置 | |
CN109150286B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190426 |