基于WiFi的智能终端远程执行服务命令的方法
技术领域
本发明涉及智能终端调试的技术领域,特别是涉及一种基于WiFi的智能终端远程执行服务命令的方法。
背景技术
随着移动物联网、智能终端、计算机通信技术的飞速融合发展,以及Android***的问世,智能***的各种移动互联网设备不断涌出,市场上随处都可以看到各种各样的Android智能终端。现有技术一般是通过USB线的方式连接智能终端的接口进行调试开发相应的程序。通常,一条USB接口只能连接一个智能终端来进行调试。该调试方法比较受限,必须在现场调试,无法实现调试服务器对智能终端的远程调试。
现有技术中,还可以通过WiFi连接服务器与Android智能终端,采用第三方应用来进行调试。但是采用这种方式的前提是Android智能终端的操作***必须开启root模式。而操作***开启root模式后,会提升***的潜在风险,并带来不稳定性。
另外,申请号为201410637809.5、发明名称为《通过wifi调试多台Android设备的方法》的中国发明专利公开一种通过wifi调试多台Android设备的方法,所述的方法是使开发电脑与待调试的Android设备位于同一局域网下,Android设备无需开启root模式,通过usb方式获取Android设备的IP地址,并将这些IP地址缓存至数组中,同时设置Android设备监听指定端口;最后通过开发电脑遍历IP数组,使用TCP/IP协议逐一与多台Android设备建立长连接实现同时调试。但是,该方法具有以下不足:1)使开发电脑与待调试的Android设备位于同一局域网下,应用比较受限;如果涉及到跨网段则需要智能网关才能实现;2)由于是控制多台设备,在电脑控制终端需要调试不同的终端,在不同的设备间来回切换,导致***开销增大。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于WiFi的智能终端远程执行服务命令的方法,通过WiFi获取目的智能终端的IP地址及端口,通过TCP/IP协议建立连接,利用LINUX技术执行管道命令,通过输入输出流发出操作命令给调试进程,并反馈操作命令执行结果,从而不需要建立专门的VPN通道,即可随时对Android智能终端进行远程监控和调试。
为实现上述目的及其他相关目的,本发明提供一种基于WiFi的智能终端远程执行服务命令的方法,包括以下步骤:步骤S1、智能终端通过WiFi与智能路由网关建立连接,智能路由网关获取智能终端的IP地址、端口号,以及智能终端的基本信息;步骤S2、智能路由网关与智能终端间建立网络通道;步骤S3、远程服务器获取智能终端通过网络通道传输来的通道数据;步骤S4、远程服务器解析通道数据,并存储解析数据;步骤S5、远程服务器判断相应的***是否获取到解析数据:若是,转入步骤S6;若否,转入步骤S4;步骤S6、远程服务器通过网络通道发送操作命令至智能终端,智能终端接收该操作命令,并返回执行结果。
根据上述的基于WiFi的智能终端远程执行服务命令的方法,其中:所述步骤S1中,所述智能终端的基本信息包括国际移动设备标识和序列号。
根据上述的基于WiFi的智能终端远程执行服务命令的方法,其中:通过智能路由网关将获取的智能终端的IP地址映射到外网网段。
根据上述的基于WiFi的智能终端远程执行服务命令的方法,其中:所述步骤S2中,智能路由网关和智能终端间通过TCP/IP协议建立网络通道。
根据上述的基于WiFi的智能终端远程执行服务命令的方法,其中:所述步骤S3中,所述通道数据包括智能终端的IP地址、端口号,以及智能终端的基本信息。
根据上述的基于WiFi的智能终端远程执行服务命令的方法,其中:所述步骤S3中,所述通道数据在所述网络通道中以远程对象数据流的形式传输。
根据上述的基于WiFi的智能终端远程执行服务命令的方法,其中:所述步骤S4中,所述远程服务器将所述解析数据存储在远程服务器数据库。
根据上述的基于WiFi的智能终端远程执行服务命令的方法,其中:所述步骤S6中,所述远程服务器建立相应的智能终端管理***页面,通过远程接口将远程服务命令发送到客户端,并从远程接口上接收智能终端返回的执行结果。
根据上述的基于WiFi的智能终端远程执行服务命令的方法,其中:所述步骤S6中,所述远程服务器发送的远程服务命令包括Linux命令及调试命令。
根据上述的基于WiFi的智能终端远程执行服务命令的方法,其中:所述网络通道上设置有TLS/SSL安全握手协议来进行数据传输。
如上所述,本发明的基于WiFi的智能终端远程执行服务命令的方法,具有以下有益效果:
(1)利用WiFi获取目的智能终端的IP地址及端口,以及智能终端的基本信息;通过智能网关利用TCP/IP协议建立连接,建立安全的网络数据通道;
(2)利用LINUX技术执行管道命令,在远程服务器发送Linux命令及调试命令,通过输入输出流转化相应命令,进行远程控制与调试进程,同时反馈命令执行结果;
(3)远程服务器通过网络管道采用加密的方式进行远程调用和调试,不需要建立专门的VPN通道,可以随时进行远程监控与调试智能终端;
(4)采用开发***的方式保证智能终端和远程服务器通过专用网络通道采用解析网络数据流字节码方式进行相互应答联系沟通,反应快速及时。
附图说明
图1显示为本发明的基于WiFi的智能终端远程执行服务命令的方法的流程图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
需要说明的是,本发明中所涉及的智能终端包括并不限于智能手机、平板电脑、PDA,以及其他具有数据处理功能的终端设备。通常,智能终端是指具有独立的操作***,可以由用户自行安装软件、游戏等第三方服务商提供的程序,通过此类程序来不断对手持设备的功能进行扩充,并可以通过移动通讯网络来实现无线网络接入的这样一类终端设备。
参照图1,本发明的基于WiFi的智能终端远程执行服务命令的方法包括以下步骤:
步骤S1、智能终端通过WiFi与智能路由网关建立连接,智能路由网关获取智能终端的IP地址、端口号,以及智能终端的基本信息。
其中,智能终端通过WiFi连接到智能路由网关上,智能路由网关获取智能终端的IP地址、端口号,以及智能终端的基本信息,以便远程服务器能准确定位到该智能终端。其中智能终端的基本信息包括国际移动设备标识(InternationalMobileEquipmentIdentity,IMEI)、序列号(SerialNumber,SN)等。具体地,智能路由网关通过智能终端的网络端口HTTPConnection获取相应的本地IP地址及端口号,并相应侦听程序相应变化。由于智能终端在WiFi网络环境下,IP地址及端口号发生变化的时候,侦听程序及时变化并重新获取相应的IP地址及端口号。
具体地,通过智能路由网关将获取的智能终端的IP地址映射到外网网段。智能路由网关利用智能终端TCP/IP协议、Servlet、Httpsesion及接口获取智能终端的IP地址以及相应的端口号,在获取到相应的信息后建立相应的网络加密通道,加密通道采用SSL/TLS的方式传输到远程服务器。
步骤S2、智能路由网关与智能终端间建立网络通道。
其中,在获取到智能终端的IP地址、端口号,以及智能终端的基本信息后,智能路由网关和智能终端间通过TCP/IP协议建立相应的网络通道。若智能路由网关没有获取到智能终端的IP地址、端口号,以及智能终端的基本信息,则智能路由网关与智能终端间无法建立该网络通道,须重新返回获取智能终端的IP地址、端口号,以及智能终端的基本信息。
步骤S3、远程服务器获取智能终端通过网络通道传输来的通道数据。
需要说明的是,智能终端的基本信息是由智能网关获取的,获取的目的是建立网络通道,通道建立成功后,远程服务端就能获取智能终端的数据。智能网关就是个中转站的作用。
智能路由网关和智能终端间的网络通道建立后,远程服务器通过该网络通道获取智能终端传输过来的通道数据。其中,通道数据主要包括智能终端的IP地址、端口号,以及智能终端的基本信息。同时,通道数据在网络通道中以远程对象数据流的形式传输,使得远程服务器可以很好的控制智能终端。
步骤S4、远程服务器解析通道数据,并存储解析数据。
由于通道数据是以数据流的形式传输至远程服务器后,远程服务器对该通道数据进行解析,并将解析数据存储在远程服务器数据库。如表1所示,解析数据的具体形式如下:
表1、解析数据
步骤S5、远程服务器判断远程服务程序是否获取到解析数据:若是,转入步骤S6;若否,转入步骤S4。
步骤S6、远程服务器通过网络通道发送远程服务命令命令至智能终端,智能终端接收该远程服务命令命令,并返回执行结果。
远程服务器建立相应的智能终端管理***页面,通过远程服务程序的远程接口将远程LINUX远程服务命令发送到客户端,并从远程接口上接收智能终端返回的执行结果。
具体地,远程服务器通过智能终端管理***页面执行相应的LINUX操作命令。其中,LINUX远程服务命令命令主要包括LINUXshell指令和相应的远程调试命令。该LINUX操作命令通过TCP/IP协议以数据流的形式远程发送到智能终端;智能终端在接收到远程的操作命令后,执行并返回相应的执行结果。优选地,为了安全起见,在网络通道上设置TLS/SSL安全握手协议进行数据传输。
综上所述,本发明的基于WiFi的智能终端远程执行服务命令的方法利用WiFi获取目的智能终端的IP地址及端口,以及智能终端的基本信息;通过智能网关利用TCP/IP协议建立连接,建立安全的网络数据通道;利用LINUX技术执行管道命令,在后台服务端发送Linux命令及调试命令,通过输入输出流转化相应命令,进行远程控制与调试进程,同时反馈命令执行结果;远程服务器通过网络管道采用加密的方式进行远程调用和调试,不需要建立专门的VPN通道,可以随时进行远程监控与调试智能终端;采用开发***的方式保证智能终端和远程服务器通过专用网络通道采用解析网络数据流字节码方式进行相互应答联系沟通,反应快速及时。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。