CN104717282B - 一种控制安卓操作系统智能终端的方法、装置与系统 - Google Patents
一种控制安卓操作系统智能终端的方法、装置与系统 Download PDFInfo
- Publication number
- CN104717282B CN104717282B CN201510073150.XA CN201510073150A CN104717282B CN 104717282 B CN104717282 B CN 104717282B CN 201510073150 A CN201510073150 A CN 201510073150A CN 104717282 B CN104717282 B CN 104717282B
- Authority
- CN
- China
- Prior art keywords
- intelligent terminal
- control
- server
- android
- terminal equipment
- 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.)
- Active
Links
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/22—Arrangements for detecting or preventing errors in the information received using redundant apparatus to increase reliability
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开一种控制安卓操作系统智能终端的方法,通过接收安卓智能终端设备的控制指令;检测主服务器上是否有和用户发出的控制指令对应的控制脚本;将控制脚本发送给安卓智能终端设备所在的从服务器;从服务器执行接收的控制脚本,并将控制执行程序推送到安卓智能终端设备;安卓智能终端设备运行控制执行程序,执行控制操作。本发明将大大提高适配性测试中大量测试智能终端设备的统一重启、屏幕解锁、静音等配置、维护效率,保证测试设备稳定接入同一个加密的无线网络,并能在个别设备网络连接失败时给予明显的提示以便运维人员及时处理。本发明还公开了一种控制安卓操作系统智能终端的装置与系统。
Description
技术领域
本发明涉及计算机控制技术领域,尤其涉及一种控制安卓操作系统智能终端的方法、装置与系统。
背景技术
目前,安卓操作系统因其开放性带来了其产业生态的繁荣,大量手机厂商都以安卓系统为基础开发自有品牌的智能终端设备,然而这在给消费者提供了众多智能终端产品选择的同时,也带来了各种移动应用适配性问题,这就要求为移动应用开展适配性测试业务。为开展基于安卓操作系统的移动互联网应用程序适配性测试,需要部署基于各类安卓版本、主流型号和典型配置的测试智能终端池,需要统一配置各个测试终端的网络参数确保其稳定的网络接入,并需要统一控制各个测试终端完成重启、解锁屏幕、静音等操作。
保证测试终端网络接入,并对测试终端完成重启、屏幕解锁、静音等操作的传统方法是通过人工手动配置完成,智能终端设备数量很大时,需要多个操作人员同时进行操作。
人工操作完成测试终端的重启、屏幕解锁、静音以及网络参数的配置,效率低下,测试中仍难以避免设备网络掉线的情况经常发生,无法保证测试业务的连续性,且由于需要频繁人工检测确认设备状态、联网情况,对智能终端设备进行静音操作等,需要较大的人力维护投入,增加了测试成本。
发明内容
本发明所要解决的技术问题是如何提供一种控制安卓操作系统智能终端的方法、装置与系统,能够方便、高效的对大量测试智能终端设备进行统一控制的关键问题。
为此目的,本发明提出了一种控制安卓操作系统智能终端的方法,包括以下具体步骤:
S1:接收安卓智能终端设备的控制指令;
S2:检测主服务器上是否有和用户发出的控制指令对应的控制脚本;
S3:如果所述主服务器上是有和用户发出的控制指令对应的控制脚本,则将控制脚本发送给所述安卓智能终端设备所在的从服务器;
S4:所述从服务器执行接收的控制脚本,并将控制执行程序推送到所述安卓智能终端设备;
S5:所述安卓智能终端设备运行所述控制执行程序,执行控制操作。
具体地,所述控制脚本为Windows系统Batch批处理脚本或Linux系统Bash脚本或Python可执行脚本。
进一步地,所述步骤S2进一步包括:
S21:检测用户发出的控制指令的合法性,并进行解析;
S22:通过解析生成用户控制的所述安卓智能终端设备型号列表;
S23:通过所述安卓智能终端设备型号列表判定其对应的从服务器。
具体地,所述安卓智能终端设备型号列表包括:所述安卓智能终端设备对应的从服务器的IP地址、所述安卓智能终端设备型号Model和/或所述安卓智能终端设备控制序列号Serial No.。
进一步地,所述步骤S4进一步包括:
S41:所述从服务器实时检测并更新与自身连接的所述安卓智能终端设备的部署列表;
S42:在第一预设时间内所述从服务器向所述主服务器发送带有请求序号的连接状态确认请求指令,并以第二预设时间作为间隔时间检测是否收到与请求序号相对应的所述主服务器的应答,超时未收到所述主服务器的应答则重发所述连接状态请求指令;
S43:所述主服务器收到所述从服务器的连接状态请求指令后,将检测存储的所述从服务器已经注册的所述安卓智能终端台数,并计算所述从服务器已经注册的所述安卓智能终端设备控制序列号列表的散列值,将上述结果附带请求序号作为应答反馈给所述从服务器;
S44:所述从服务器收到所述主服务器的应答,所述从服务器检测实际连接的所述安卓智能终端设备的台数与所述主服务器反馈的台数是否相同;
S45:如果所述从服务器检测实际连接的所述安卓智能终端设备的台数与所述主服务器反馈的台数相同,则继续检测所述主服务器反馈的控制序列号列表的散列值与实际连接的所述安卓智能终端设备的控制序列号列表的散列值是否相同;
S46:如果所述从服务器检测所述主服务器反馈的控制序列号列表的散列值与所述从服务器实际连接的所述安卓智能终端设备的控制序列号列表的散列值相同,则所述从服务器注册结束;
S47:如果检测所述主服务器反馈的控制序列号列表的散列值与实际连接的所述安卓智能终端设备的控制序列号列表的散列值不相同,则所述从服务器将当前的连接的所述安卓智能终端设备的部署情况列表发送给所述主服务器。
为此目的,本发明还提出了一种控制安卓操作系统智能终端的装置,包括:
Web服务模块,用于提供一个供Web端用户输入控制命令的接口,检测用户发出的控制命令的合法性并进行解析;
控制脚本调度与发送模块,用于根据用户发出的控制命令选择正确的从服务器,并向所述从服务器发送控制脚本;
控制脚本接收与执行模块,用于对控制脚本进行接收与执行;
终端设备连接控制模块,用于为每台智能终端设备分配一个在所属所述从服务器上唯一的控制序列号;并监控每台智能终端设备的连接情况。
为此目的,本发明还提出了一种控制安卓操作系统智能终端的系统,包括:一台主服务器、多台从服务器以及多个安卓智能终端设备;
所述主服务器包括:所述Web服务模块以及所述控制脚本调度与发送模块;所述从服务器包括:所述控制脚本接收与执行模块以及所述终端设备连接控制模块,其中,每个所述从服务器通过USB hub扩展的USB接口进行连接并控制所述多个安卓智能终端设备;
控制执行程序运行在所述安卓智能终端设备,其中,所述控制执行程序用于调用所述安卓智能终端的相关API接口执行控制操作。
进一步地,所述终端设备连接控制模块,还用于对所述安卓智能终端设备执行重启、解锁屏幕、静音和/或连接无线网络操作。
具体地,所述重启所述安卓智能终端设备的方式为通过向所述安卓智能终端设备发送重启指令。
具体地,所述解锁所述安卓智能终端设备屏幕的方式为通过发送模拟人工点击、滑动指令。
本发明公开了一种控制安卓操作系统智能终端的方法,通过接收安卓智能终端设备的控制指令;检测主服务器上是否有和用户发出的控制指令对应的控制脚本;如果主服务器上是有和用户发出的控制指令对应的控制脚本,则将控制脚本发送给安卓智能终端设备所在的从服务器上;从服务器执行接收的控制脚本,并将控制执行程序推送到安卓智能终端设备;安卓智能终端设备运行控制执行程序,执行控制操作。本发明提出的一种控制安卓操作系统智能终端的方法,从而方便高效的对大量测试智能终端设备进行统一控制,如统一重启、解锁屏幕、静音、配置网络参数等。本发明将大大提高适配性测试中大量测试智能终端设备的配置、维护效率,保证测试设备稳定接入同一个加密的无线网络,并能在个别设备网络连接失败时给予明显的提示以便运维人员及时处理。本发明还公开了一种控制安卓操作系统智能终端的装置与系统。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:
图1示出了根据本发明实施例的一种控制安卓操作系统智能终端的方法的步骤流程图;
图2示出了根据本发明实施例的一种控制安卓操作系统智能终端的装置的结构示意图;
图3示出了根据本发明实施例的一种控制安卓操作系统智能终端的系统的结构示意图;
图4示出了根据本发明实施例的一种控制安卓操作系统智能终端的系统中的网络部署示意图;
图5示出了根据本发明实施例的一种控制安卓操作系统智能终端的系统控制流程图;
图6示出了根据本发明实施例的一种控制安卓操作系统智能终端的系统中的安卓智能终端设备部署情况列表示意图;
图7示出了根据本发明实施例的一种控制安卓操作系统智能终端的系统中从服务器向主服务器注册过程示意图;
图8示出了根据本发明实施例的一种控制安卓操作系统智能终端的系统中从服务器以及主服务器的设备部署列表关系示意图;
图9示出了根据本发明实施例的一种控制安卓操作系统智能终端的系统中自动控制安卓智能终端设备解锁原理示意图;
图10示出了根据本发明实施例的一种控制安卓操作系统智能终端的系统中Wi-Fi设置功能控制执行程序执行流程图;
图11示出了根据本发明实施例的一种控制安卓操作系统智能终端的系统中Wi-Fi设置功能控制执行程序界面示意图;
图12示出了根据本发明实施例的一种控制安卓操作系统智能终端的系统中具体实施例SlaveServer1的注册流程示意图。
具体实施方式
下面将结合附图对本发明的实施例进行详细描述。以下实施例仅用于说明本发明,但不能用来限制本发明的范围。
为了更好的理解与应用本发明提出的一种控制安卓操作系统智能终端的方法、装置与系统,以如下附图示例进行详细说明。
如图1所示,本发明提供了一种控制安卓操作系统智能终端的方法,包括以下具体步骤:
步骤S1:接收安卓智能终端设备的控制指令。
步骤S2:检测主服务器上是否有和用户发出的控制指令对应的控制脚本,其中,控制脚本为Windows系统Batch批处理脚本或Linux系统Bash脚本或Python等其他格式可执行脚本。由此,提高了控制脚本的多样性。
进一步地,步骤S2进一步包括:
步骤S21:检测用户发出的控制指令的合法性,并进行解析。
步骤S22:通过解析生成用户控制的安卓智能终端设备型号列表,其中,安卓智能终端设备型号列表包括:安卓智能终端设备对应的从服务器的IP地址、安卓智能终端设备型号Model和/或安卓智能终端设备控制序列号Serial No.。由此,提高了安卓智能终端设备型号列表中参数信息的多样性。
步骤S23:通过安卓智能终端设备型号列表判定其对应的从服务器。
步骤S3:如果主服务器上是有和用户发出的控制指令对应的控制脚本,则将控制脚本发送给安卓智能终端设备所在的从服务器。
步骤S4:从服务器执行接收的控制脚本,并将控制执行程序推送到安卓智能终端设备。
具体地,步骤S4进一步包括:
步骤S41:从服务器实时检测并更新与自身连接的安卓智能终端设备的部署列表。
步骤S42:在第一预设时间内从服务器向主服务器发送带有请求序号的连接状态确认请求指令,并以第二预设时间作为间隔时间检测是否收到与请求序号相对应的主服务器的应答,超时未收到主服务器的应答则重发连接状态请求指令。
步骤S43:主服务器收到从服务器的连接状态请求指令后,将检测存储的从服务器已经注册的安卓智能终端台数,并计算从服务器已经注册的安卓智能终端设备控制序列号列表的散列值,将上述结果附带请求序号作为应答反馈给从服务器。
步骤S44:从服务器收到主服务器的应答,从服务器检测实际连接的安卓智能终端设备的台数与主服务器反馈的台数是否相同。
步骤S45:如果从服务器检测实际连接的安卓智能终端设备的台数与主服务器反馈的台数相同,则继续检测主服务器反馈的控制序列号列表的散列值与实际连接的安卓智能终端设备的控制序列号列表的散列值是否相同。
步骤S46:如果从服务器检测主服务器反馈的控制序列号列表的散列值与从服务器实际连接的安卓智能终端设备的控制序列号列表的散列值相同,则从服务器注册结束。
步骤S47:如果检测主服务器反馈的控制序列号列表的散列值与实际连接的安卓智能终端设备的控制序列号列表的散列值不相同,则从服务器将当前的连接的安卓智能终端设备的部署情况列表发送给主服务器。
步骤S5:安卓智能终端设备运行控制执行程序,执行控制操作。
如图2所示,本发明提供了一种控制安卓操作系统智能终端的装置,包括:Web服务模块101、控制脚本调度与发送模块102、控制脚本接收与执行模块103以及终端设备连接控制模块104。
具体地,Web服务模块101用于提供一个供Web端用户输入控制命令的接口,检测用户发出的控制命令的合法性并进行解析;控制脚本调度与发送模块102用于根据用户发出的控制命令选择正确的从服务器,并向从服务器发送控制脚本;控制脚本接收与执行模块103用于对控制脚本进行接收与执行;终端设备连接控制模块104用于为每台智能终端设备分配一个在所属从服务器上唯一的控制序列号;并监控每台智能终端设备的连接情况。
如图3所示,本发明提供了一种控制安卓操作系统智能终端的系统,包括:一台主服务器、多台从服务器以及多个安卓智能终端设备。
具体地,主服务器包括:Web服务模块以及控制脚本调度与发送模块;从服务器包括:控制脚本接收与执行模块以及终端设备连接控制模块,其中,每个从服务器通过USBhub扩展的USB接口进行连接并控制多个安卓智能终端设备;控制执行程序运行在安卓智能终端设备,其中,控制执行程序用于调用安卓智能终端的相关API接口执行控制操作。
进一步地,终端设备连接控制模块还用于对安卓智能终端设备执行重启、解锁屏幕、静音和/或连接无线网络操作。具体地,重启安卓智能终端设备的方式为通过向安卓智能终端设备发送重启指令,且解锁安卓智能终端设备屏幕的方式为通过发送模拟人工点击、滑动指令。
本发明公开了一种控制安卓操作系统智能终端的方法,通过接收安卓智能终端设备的控制指令;检测主服务器上是否有和用户发出的控制指令对应的控制脚本;如果主服务器上是有和用户发出的控制指令对应的控制脚本,则将控制脚本发送给安卓智能终端设备所在的从服务器上;从服务器执行接收的控制脚本,并将控制执行程序推送到安卓智能终端设备;安卓智能终端设备运行控制执行程序,执行控制操作。本发明提出的一种控制安卓操作系统智能终端的方法,从而方便高效的对大量测试智能终端设备进行统一控制,如统一重启、解锁屏幕、静音、配置网络参数等。本发明将大大提高适配性测试中大量测试智能终端设备的配置、维护效率,保证测试设备稳定接入同一个加密的无线网络,并能在个别设备网络连接失败时给予明显的提示以便运维人员及时处理。
为了更好的理解与应用本发明提出的一种控制安卓操作系统智能终端的系统,本发明进行以下示例,且本发明不仅仅局限以下示例。
具体地,如图4所示,一台主服务器,即以下简称MasterServer和若干台从服务器,即以下简称SlaveServer,例如:SlaveServer1、SlaveServer2…。控制指令发送终端等通过交换机或路由器设备连接成为一个局域网。每个SlaveServer通过USB hub扩展的USB接口连接并控制若干台安卓智能终端设备。所有安卓智能终端设备通过Wi-Fi接入公网。
进一步地,如图5所示,管理人员通过控制指令发送终端登录Web服务模块提供的Web端控制命令接口输入控制指令。控制指令执行流程为:管理员通过系统提供Web界面向系统下达智能终端控制命令,Web服务模块接收智能终端控制命令,其中,用户输入的控制命令格式为:
CommandIP<IP_address>
Model <Model_name>
其中,Command为控制脚本文件名,IP_address为待控制设备所在的IP地址,Model_name为待控制设备型号Model名。
当Command后没有任何参数时,将对所有安卓智能终端设备执行控制命令;当仅有IP参数时,将对IP_address对应的SlaveServer上连接的全部安卓智能终端设备执行控制命令;当仅有Model参数时,将对所有型号名称为Model_name的安卓智能终端设备执行控制指令。
更进一步地,控制脚本可以是Windows系统Batch批处理脚本,可以是Linux系统Bash脚本,也可以是Python等其他可执行脚本文件格式。由此,提高了控制脚本的多样性。
进一步地,Web服务模块检测MasterServer上是否有和用户发出的控制命令对应的智能终端控制脚本,检测用户发出的控制命令的合法性并进行解析,确定用户需要控制的设备型号列表,并根据此列表,确定目标终端所在的SlaveServer。具体地,部署在MasterServer上的Web服务模块与部署在SlaveServer上的终端设备连接控制模块通信获得各个SlaveServer上智能终端设备的连接情况,从而得到全部智能终端设备的部署情况列表。列表主要由SlaveServer的IP地址、智能终端设备型号Model、智能终端设备控制序列号SerialNo等组成,此列表形式如图6所示。
进一步地,控制脚本以及APK,即控制执行程序由MasterServer通过控制脚本调度与发送模块发送给目标终端所在的SlaveServer。
具体地,如图7所示,首先对SlaveServer启动后的注册流程进行详述:SlaveServer启动后的注册流程:SlaveServer实时检测并更新连接此SlaveServer的智能终端设备部署列表List,并定时T0向MasterServer发送带有请求序号的“连接状态确认请求”ConnReq,并间隔Tc检测是否收到与请求序号相对应的MasterServer的应答,超时则重发请求(T0>Tc);MasterServer收到ConnReq后,将查询MasterServer上FullList中已经存储的此SlaveServer上连接的设备数量N_SlaveServer_ori,并将此数值以及FullList中保存的SlaveServer上设备控制序列号列表的散列值Digest(List_SlaveServer_ori)作为应答数据反馈给SlaveServer,散列算法可以是MD5、SHA-1等;收到应答后,SlaveServer检测实际连接的设备数量和主服务器反馈的N_SlaveServer_ori数值是否相同,如果相同将检测Digest(List_SlaveServer_ori)和实际连接设备控制序列号列表的散列值Digest(List_SlaveServer_curr),如果依然相同,则结束本次注册流程,如果不相同,则SlaveServer把当前的连接的设备部署情况列表List_SlaveServer发送给MasterServer,请求更新MasterServer上此SlaveServer的智能终端设备部署情况列表,请求信息依然携带请求序号,并间隔Tc检测是否收到与请求序号相对应的MasterServer的应答,超时则重发请求;MasterServer更新完毕后,返回更新成功应答。
更进一步地,综上所述,保证MasterServer上的设备列表FullList恰好是所有SlaveServer所连接的智能终端设备部署情况的汇总。MasterServer与SlaveServer的设备列表关系如图8所示。
更进一步地,SlaveServer上的控制脚本接收与执行模块执行控制脚本并推送控制执行程序到目标智能终端。具体地,运行在SlaveServer的终端设备连接控制模块为每台智能终端设备分配一个在所属SlaveServer上唯一的控制序列号,并不断监控智能终端设备的连接情况。对于使用安卓SDK中原生ADB程序运行“adb devices”命令时获得的设备序列号重复的情况,如果使用原生ADB程序进行设备连接,将无法正常控制发生序列号重复的每一台设备。本发明将重新设定SlaveServer所连接的所有设备的序列号为原序列号加所属SlaveServer上唯一序号的形式,其中,唯一序号可以是递增的数字,也可以是递增的英文字符。例如,某SlaveServer上运行有2台序列号为“0123456789ABCDEF”的设备以及1台序列号为“modelSerialABC”的设备,终端设备连接控制模块将自动为连接的所有设备重新设置序列号为:“0123456789ABCDEF1”、“0123456789ABCDEF2”、“modelSerialABC3”…以便于对每一台原序列号重复的设备的单独控制。
更进一步地,控制的内容包括重启、解锁屏幕、静音、连接无线网络等,控制功能可以通过编写新的控制脚本予以扩充。具体地,对于重启智能终端设备,通过向目标智能终端设备发送重启指令实现。在没有指定智能终端设备型号以及SlaveServer的IP情况下,将对全部智能终端设备执行重启操作,且对于解锁智能终端设备屏幕,通过发送模拟人工点击、滑动事件来完成,由于不同屏幕分辨率的智能终端设备解锁所需要点击以及滑动的坐标范围各有不同,通过发送多次横坐标递增/递减的纵向滑动、纵坐标递增/递减的横向滑动来实现功能。在没有指定智能终端设备型号以及SlaveServer的IP情况下,将对全部智能终端设备尝试执行上述解锁模拟操作。对智能终端设备进行自动解锁的模拟事件示意图如图9所示,箭头所示方向为模拟滑动事件的起始方向。
更进一步地,对于控制智能终端设备静音操作,通过发送多次音量减低的输入事件来实现。在没有指定智能终端设备型号以及SlaveServer的IP情况下,将对全部智能终端设备尝试执行上述静音操作。
更进一步地,对于控制全部智能终端设备进行联网的操作,通过将具有Wi-Fi设置功能的控制执行程序推送安装到全部智能终端设备,并将上述控制执行程序启动运行来实现。
进一步地,目标智能终端运行控制执行程序,完成控制动作。具体地,具有Wi-Fi连接设置功能的控制执行程序执行逻辑如图10所示。对于控制全部智能终端设备进行联网的操作时使用的具有Wi-Fi设置功能的控制执行程序,将以明显的界面图标展示设备联网状态,对于联网成功的设备,将显示一个绿色背景的对勾,对于联网失败的设备,将显示一个显著的红色背景叉号,帮助运维人员及时发现联网异常的设备,如图11所示。
本发明公开了一种控制安卓操作系统智能终端的系统,方便高效的对大量测试智能终端设备进行统一控制,如统一重启、解锁屏幕、静音、配置网络参数等;保证测试设备稳定接入同一个加密的无线网络,并能在个别设备网络连接失败时给予明显的提示以便运维人员及时处理。大大提高适配性测试中大量测试智能终端设备的配置、维护效率。
实施例1:
系统有一台MasterServer,两台SlaveServer,分别命名为SlaveServer1、SlaveServer2,部署在同一个网段的局域网环境中,IP地址分别为IP0、IP1、IP2,两台SlaveServer各连接有6台安卓智能终端设备。以SlaveServer1、SlaveServer2启动并向MasterServer的注册过程以及用户通过指令控制全部智能终端联网操作为例。
具体地,SlaveServer1启动后首先枚举该从服务器上已经连接的智能终端设备,假定已经连接的6台智能终端设备中有两台的控制序列号重复,他们的型号分别为Model_A、Model_B。假定6台设备的原始序列号如下表所示:
Model_A | 0123456789aABCDE |
Model_B | 0123456789aABCDE |
Model_C | SerialNo_C |
Model_D | SerialNo_D |
Model_E | SerialNo_E |
Model_F | SerialNo_F |
进一步地,终端设备连接控制模块将为他们重新设置序列号,新的控制序列号为原控制序列号加一个递增数字保证SlaveServer1所属的每台设备控制序列号的唯一性,则SlaveServer1枚举设备信息并重新设置各个设备的控制序列号后获得的智能终端设备部署列表List_SlaveServer1为:
IP1 | Model_A | 0123456789aABCDE1 | … |
IP1 | Model_B | 0123456789aABCDE2 | … |
IP1 | Model_C | SerialNo_C3 | … |
IP1 | Model_D | SerialNo_D4 | … |
IP1 | Model_E | SerialNo_E5 | … |
IP1 | Model_F | SerialNo_F6 | … |
其中,在此假定SlaveServer2上获得的智能终端设备部署列表List_SlaveServer2为:
IP2 | Model_G | SerialNo_G | … |
IP2 | Model_H | SerialNo_H | … |
IP2 | Model_I | SerialNo_I | … |
IP2 | Model_J | SerialNo_J | … |
IP2 | Model_H | SerialNo_H | … |
IP2 | Model_K | SerialNo_K | … |
更进一步地,如图12所示,SlaveServer1实时检测并更新其智能终端设备部署列表List_SlaveServer1,并定时T0向MasterServer发送带有请求序号的“连接状态确认请求”ConnReq,并间隔Tc检测是否收到与请求序号相对应的MasterServer的应答,超时则重发请求;MasterServer收到ConnReq后,将查询MasterServer上FullList中已经存储的SlaveServer1上连接的设备数量,发现FullList中没有SlaveServer1的记录,则N_SlaveServer1_ori==0,设备控制序列号列表的散列值MD5(List_SlaveServer1_ori)==Null;将上述数据作为应答数据反馈给SlaveServer1;收到应答后,SlaveServer1检测实际连接的设备数量N_SlaveServer1_curr不等于主服务器反馈的0值,则SlaveServer1把当前的连接的设备部署情况列表List_SlaveServer1发送给MasterServer,请求更新MasterServer上SlaveServer1的智能终端设备部署情况列表,请求信息依然携带请求序号,并间隔Tc检测是否收到与请求序号相对应的MasterServer的应答,超时则重发请求;MasterServer更新完毕后,返回更新成功应答。
更进一步地,SlaveServer2也完成了与上述SlaveServer1相同的注册过程,注册完毕后,MasterServer上的FullList表如下:
IP1 | Model_A | 0123456789aABCDE1 | … |
IP1 | Model_B | 0123456789aABCDE2 | … |
IP1 | Model_C | SerialNo_C3 | … |
IP1 | Model_D | SerialNo_D4 | … |
IP1 | Model_E | SerialNo_E5 | … |
IP1 | Model_F | SerialNo_F6 | … |
IP2 | Model_G | SerialNo_G | … |
IP2 | Model_H | SerialNo_H | … |
IP2 | Model_I | SerialNo_I | … |
IP2 | Model_J | SerialNo_J | … |
IP2 | Model_H | SerialNo_H | … |
IP2 | Model_K | SerialNo_K | … |
综上所述,用户通过Web端输入控制全部智能终端联网指令,如“setWiFiPwd”,Web服务模块接收到命令后检测MasterServer上存在对应的智能终端控制脚本,如“setWiFiPwd.bat”,由于命令后没有参数,则确定控制全部设备,确定将指令分别发送给SlaveServer1以及SlaveServer2;控制脚本以及连网控制执行程序由MasterServer通过控制脚本调度与发送模块发送给SlaveServer1、SlaveServer2;SlaveServer1、SlaveServer2上的控制脚本接收与执行模块执行控制脚本并推送控制执行程序到全部目标智能终端;目标智能终端运行控制执行程序,完成联网控制动作。联网失败的设备将展示一个显著的背景的叉号提示运维人员及时进行手工配置处理。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者系统程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
本文中所称的“一个实施例”、“实施例”或者“一个或者多个实施例”意味着,结合实施例描述的特定特征、结构或者特性包括在本发明的至少一个实施例中。此外,请注意,这里“在一个实施例中”的词语例子不一定全指同一个实施例。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干系统的单元权利要求中,这些系统中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
此外,还应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。
虽然结合附图描述了本发明的实施方式,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (4)
1.一种控制安卓操作系统智能终端的方法,其特征在于,包括以下具体步骤:
S1:接收安卓智能终端设备的控制指令;
S2:检测主服务器上是否有和用户发出的控制指令对应的控制脚本;
S3:如果所述主服务器上是有和用户发出的控制指令对应的控制脚本,则将控制脚本发送给所述安卓智能终端设备所在的从服务器;
S4:所述从服务器执行接收的控制脚本,并将控制执行程序推送到所述安卓智能终端设备;
S5:所述安卓智能终端设备运行所述控制执行程序,执行控制操作;
所述步骤S4进一步包括:
S41:所述从服务器实时检测并更新与自身连接的所述安卓智能终端设备的部署列表;
S42:在第一预设时间内所述从服务器向所述主服务器发送带有请求序号的连接状态确认请求指令,并以第二预设时间作为间隔时间检测是否收到与请求序号相对应的所述主服务器的应答,超时未收到所述主服务器的应答则重发所述连接状态请求指令;
S43:所述主服务器收到所述从服务器的连接状态请求指令后,将检测存储的所述从服务器已经注册的所述安卓智能终端台数,并计算所述从服务器已经注册的所述安卓智能终端设备控制序列号列表的散列值,将上述结果附带请求序号作为应答反馈给所述从服务器;
S44:所述从服务器收到所述主服务器的应答,所述从服务器检测实际连接的所述安卓智能终端设备的台数与所述主服务器反馈的台数是否相同;
S45:如果所述从服务器检测实际连接的所述安卓智能终端设备的台数与所述主服务器反馈的台数相同,则继续检测所述主服务器反馈的控制序列号列表的散列值与实际连接的所述安卓智能终端设备的控制序列号列表的散列值是否相同;
S46:如果所述从服务器检测所述主服务器反馈的控制序列号列表的散列值与所述从服务器实际连接的所述安卓智能终端设备的控制序列号列表的散列值相同,则所述从服务器注册结束;
S47:如果检测所述主服务器反馈的控制序列号列表的散列值与实际连接的所述安卓智能终端设备的控制序列号列表的散列值不相同,则所述从服务器将当前的连接的所述安卓智能终端设备的部署情况列表发送给所述主服务器。
2.如权利要求1所述的方法,其特征在于,所述控制脚本为Windows系统Batch批处理脚本或Linux系统Bash脚本或Python可执行脚本。
3.如权利要求1所述的方法,其特征在于,所述步骤S2进一步包括:
S21:检测用户发出的控制指令的合法性,并进行解析;
S22:通过解析生成用户控制的所述安卓智能终端设备型号列表;
S23:通过所述安卓智能终端设备型号列表判定其对应的从服务器。
4.如权利要求3所述的方法,其特征在于,所述安卓智能终端设备型号列表包括:所述安卓智能终端设备对应的从服务器的IP地址、所述安卓智能终端设备型号Model和/或所述安卓智能终端设备控制序列号Serial No.。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510073150.XA CN104717282B (zh) | 2015-02-11 | 2015-02-11 | 一种控制安卓操作系统智能终端的方法、装置与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510073150.XA CN104717282B (zh) | 2015-02-11 | 2015-02-11 | 一种控制安卓操作系统智能终端的方法、装置与系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104717282A CN104717282A (zh) | 2015-06-17 |
CN104717282B true CN104717282B (zh) | 2018-07-24 |
Family
ID=53416230
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510073150.XA Active CN104717282B (zh) | 2015-02-11 | 2015-02-11 | 一种控制安卓操作系统智能终端的方法、装置与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104717282B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105095119B (zh) * | 2015-07-03 | 2018-07-06 | 百度在线网络技术(北京)有限公司 | 一种与adb设备进行通信的方法及装置 |
CN105574397A (zh) * | 2015-12-10 | 2016-05-11 | 北京奇虎科技有限公司 | 一种控制移动设备的自动解锁方法和装置 |
CN106919077A (zh) * | 2015-12-24 | 2017-07-04 | 阿里巴巴集团控股有限公司 | 控制方法、设备和系统 |
CN106997291B (zh) * | 2016-01-26 | 2020-12-22 | 中移(杭州)信息技术有限公司 | 一种控制方法及主节点、从节点 |
CN106790430A (zh) * | 2016-12-02 | 2017-05-31 | 无锡久源软件股份有限公司 | 手机控制方法及系统 |
CN107301100A (zh) * | 2017-08-15 | 2017-10-27 | 北京悦畅科技有限公司 | 一种停车场远程控制方法、装置和系统 |
WO2019041572A1 (zh) * | 2017-08-30 | 2019-03-07 | 苏州倾爱娱乐传媒有限公司 | 一种基于Android平台的自动化测试系统 |
CN108833482B (zh) * | 2018-05-21 | 2020-12-08 | 平安科技(深圳)有限公司 | Mdl文件自动下载方法、系统、计算机设备和存储介质 |
CN109583685B (zh) * | 2018-10-15 | 2024-05-07 | 平安科技(深圳)有限公司 | 终端测评方法、装置、计算机设备及存储介质 |
CN109656625A (zh) * | 2018-11-15 | 2019-04-19 | 平安科技(深圳)有限公司 | 移动设备型号的识别方法、装置、计算机设备和存储介质 |
CN109871221B (zh) * | 2019-02-01 | 2022-02-08 | 中国电子科技集团公司第二十八研究所 | 一种针对移动终端设备快速装机部署移动应用软件的系统 |
CN110018838B (zh) * | 2019-03-01 | 2022-05-06 | 视联动力信息技术股份有限公司 | 一种配置安卓医疗终端中程序的方法以及系统 |
CN110213348B (zh) * | 2019-05-16 | 2022-05-13 | 中科物栖(北京)科技有限责任公司 | 一种物联网设备控制方法及系统 |
CN114115381B (zh) * | 2021-12-02 | 2022-08-02 | 四川虹美智能科技有限公司 | 基于安卓系统的智能终端设备的控温方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902618A (zh) * | 2011-07-28 | 2013-01-30 | 华为技术有限公司 | 移动设备应用程序开发调试的方法及装置 |
CN102938800A (zh) * | 2012-11-07 | 2013-02-20 | 大唐移动通信设备有限公司 | 一种无线通信质量自动测试系统以及方法 |
CN104063305A (zh) * | 2013-03-18 | 2014-09-24 | 腾讯科技(深圳)有限公司 | 智能终端软件的压力测试方法、装置和系统 |
-
2015
- 2015-02-11 CN CN201510073150.XA patent/CN104717282B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902618A (zh) * | 2011-07-28 | 2013-01-30 | 华为技术有限公司 | 移动设备应用程序开发调试的方法及装置 |
CN102938800A (zh) * | 2012-11-07 | 2013-02-20 | 大唐移动通信设备有限公司 | 一种无线通信质量自动测试系统以及方法 |
CN104063305A (zh) * | 2013-03-18 | 2014-09-24 | 腾讯科技(深圳)有限公司 | 智能终端软件的压力测试方法、装置和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104717282A (zh) | 2015-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104717282B (zh) | 一种控制安卓操作系统智能终端的方法、装置与系统 | |
CN110622137B (zh) | 高保真度网络仿真 | |
CN105512029B (zh) | 一种测试智能终端的方法、服务器及系统 | |
CN103970650B (zh) | 分布式测试方法和装置 | |
EP2904739B1 (en) | Discovering, validating, and configuring hardware-inventory components | |
EP4245056A1 (en) | Active assurance of network slices | |
US9600386B1 (en) | Network testbed creation and validation | |
US11461206B2 (en) | Cloud simulation and validation system | |
CN106126402B (zh) | 加速器异常的处理方法及装置 | |
US20190317736A1 (en) | State machine representation of a development environment deployment process | |
CN104346198B (zh) | 信息处理装置、服务器装置、信息处理方法和存储设备 | |
Huang | AppACTS: Mobile app automated compatibility testing service | |
CN106713420B (zh) | 监控的部署方法及装置 | |
CN105721203B (zh) | 升级处理方法及装置 | |
CN111258913A (zh) | 算法自动测试方法、装置、计算机系统及可读存储介质 | |
CN113645314B (zh) | 一种私有云的部署方法和服务器 | |
CN107645408A (zh) | 无线ap批量升级管理装置 | |
US11281829B2 (en) | Device, system, and method for adaptive simulation | |
US10120707B2 (en) | Deployment of development environments | |
CN107181606B (zh) | 用于控制网络节点的方法和装置 | |
CN115914055A (zh) | 分布式网络测试方法、装置、介质及设备 | |
CN111768129A (zh) | 专有云产品的交付方法、装置、设备及存储介质 | |
JP2006113754A (ja) | ソフトウェア更新装置及び方法 | |
CN109218055A (zh) | 一种快速配置网元设备进行即插即用的方法和装置 | |
CN114285739A (zh) | 一种节点信息批量配置方法、装置、终端及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |