CN108628683B - 数据传输方法和装置 - Google Patents

数据传输方法和装置 Download PDF

Info

Publication number
CN108628683B
CN108628683B CN201710167474.9A CN201710167474A CN108628683B CN 108628683 B CN108628683 B CN 108628683B CN 201710167474 A CN201710167474 A CN 201710167474A CN 108628683 B CN108628683 B CN 108628683B
Authority
CN
China
Prior art keywords
target
response message
target object
request
sent
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
Application number
CN201710167474.9A
Other languages
English (en)
Other versions
CN108628683A (zh
Inventor
孙增昕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201710167474.9A priority Critical patent/CN108628683B/zh
Publication of CN108628683A publication Critical patent/CN108628683A/zh
Application granted granted Critical
Publication of CN108628683B publication Critical patent/CN108628683B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • G06F9/548Object oriented; Remote method invocation [RMI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种数据传输方法和装置。其中,该方法包括:接收第一目标对象发送的第一请求;响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输第一目标数据,第一应答消息用于模拟第二目标对象接收到第一目标数据后所发送的应答消息;接收第一目标对象响应第一应答消息发送的第二请求,第二请求用于请求通过网络向第二目标对象传输用于进行远程调试的第二目标数据;响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输第二目标数据,其中,第二应答消息用于模拟第二目标对象接收到第二目标数据后所发送的应答消息。本发明解决了相关技术中数据传输的传输效率低的技术问题。

Description

数据传输方法和装置
技术领域
本发明涉及数据处理领域,具体而言,涉及一种数据传输方法和装置。
背景技术
目前,远程连接手机进行开发调试,是当前应用程序(Application,简称为APP)开发测试的一种趋势,可以有效解决本地手机短缺问题,从而降低测试成本和提高测试效率。计算机(PC)与安卓(Android)设备之间的通信目前主要依赖于命令行工具adb。图1是根据相关技术中的一种adb工具的结构示意图。如图1所示,adb工具是Android生态系统的基本工具,也是通过USB方式与Android设备通信的主要工具,由客户端(Client)、服务器(Server)、和后台程序(daemon)三部分组成,其中Client和Server在PC端,daemon在设备/模拟器(Device/Emulator)中运行,Server与daemon之间使用同步协议通信,这在通过通用串行总线(Universal Serial Bus,简称为USB)在本地传输数据时不会有问题,因为USB硬件传输延时很小,但是如果经过互联网进行远程传输,由于外网传输延迟很大,采用同步协议这种延迟会造成累加,导致很小的数据传输都需要很长时间。
图2是根据相关技术中的一种数据传输的流程示意图。如图2所示,用户端adbServer向用户端工具发送第一请求,用户端工具接收请求之后,将数据通过服务端接入Server向手机发送,手机接收数据之后,通过服务端接入Server和用户端工具向用户端adbServer发送,用户端adb Server在接收到手机返回的应答消息之后才发送第二请求,依次发送第三请求,第n请求。因而用户端adb Server发送的请求之间是串行的,前一次请求完成之后才可以发起下一次请求。
因为adb工具的底层使用的是同步协议,这样导致的问题就是在网络延迟大的环境下,远程调试只能支持有限的操作,如果一个操作涉及的数据量大,比如,超过数据量为10M,这就会导致延迟非常大。如果是在开发环境下使用,基本会导致开发环境超时失败的问题,比如,在可扩展开发平台eclipse或者安卓开发环境android studio下安装一个20M左右的安装包(Android Package,简称为APK),基本都会超时失败。
以adb推送(push)数据的操作进行举例说明,假如推送一个安装包到手机,如果通过USB连接,在本地传输数据时可以达4M/s,但是如果在60ms延迟的网络环境下,需要的时间大约是USB连接传输数据的时间的120倍。在互联网上,60ms的延迟是很正常的,这就导致远程调试服务在有些场景下基本是不可用的。
针对上述数据传输的传输效率低的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据传输方法和装置,以至少解决相关技术中数据传输的传输效率低的技术问题。
根据本发明实施例的一个方面,提供了一种数据传输方法。该数据传输方法包括:接收第一目标对象发送的第一请求,其中,第一请求用于请求通过网络向第二目标对象传输用于进行远程调试的第一目标数据;响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输第一目标数据,其中,第一应答消息用于模拟第二目标对象接收到第一目标数据后所发送的应答消息;接收第一目标对象响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向第二目标对象传输用于进行远程调试的第二目标数据;响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输第二目标数据,其中,第二应答消息用于模拟第二目标对象接收到第二目标数据后所发送的应答消息。
根据本发明实施例的另一方面,还提供了一种数据传输装置。该数据传输装置包括:第一接收单元,用于接收第一目标对象发送的第一请求,其中,第一请求用于请求通过网络向第二目标对象传输用于进行远程调试的第一目标数据;第一处理单元,用于响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输第一目标数据,其中,第一应答消息用于模拟第二目标对象接收到第一目标数据后所发送的应答消息;第二接收单元,用于接收第一目标对象响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向第二目标对象传输用于进行远程调试的第二目标数据;第二处理单元,用于响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输第二目标数据,其中,第二应答消息用于模拟第二目标对象接收到第二目标数据后所发送的应答消息。
在本发明实施例中,接收第一目标对象发送的第一请求;响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输第一目标数据,其中,第一应答消息用于模拟第二目标对象接收到第一目标数据后所发送的应答消息;接收第一目标对象响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向第二目标对象传输用于进行远程调试的第二目标数据;响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输第二目标数据,由于通过对第一目标对象的请求进行响应,立即向第一目标对象返回模拟第二目标对象返回的应答信息,触发第一目标对象发送下一请求,并通过网络传输数据,以此方式对后续请求进行响应,将数据传输的同步协议转换成了异步协议,达到了对数据进行传输的目的,从而实现了提高数据的传输效率的技术效果,进而解决了相关技术中数据传输的传输效率低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据相关技术中的一种adb工具的结构示意图;
图2是根据相关技术中的一种数据传输的流程示意图;
图3是根据本发明实施例的一种数据传输方法的硬件环境的示意图;
图4是根据本发明实施例的一种数据传输的方法的流程图;
图5是根据本发明实施例的另一种数据传输方法的流程图;
图6是根据本发明实施例的另一种数据传输方法的流程图;
图7是根据本发明实施例的另一种数据传输方法的流程图;
图8是根据本发明实施例的另一种数据传输方法的流程图;
图9是根据本发明实施例的另一种数据传输方法的流程图;
图10是根据本发明实施例的一种数据传输的结构示意图;
图11是根据本发明实施例的另一种数据传输的结构示意图;
图12是根据本发明实施例的一种数据传输的流程示意图;
图13是根据本发明实施例的一种数据传输方向的示意图;
图14是根据本发明实施例的一种数据传输装置的示意图;
图15是根据本发明实施例的另一种数据传输装置的示意图;
图16是根据本发明实施例的另一种数据传输装置的示意图;以及
图17是根据本发明实施例的一种终端的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,比如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种数据传输的方法实施例。
可选地,在本实施例中,上述数据传输的方法可以应用于如图3所示的由服务器302和终端304所构成的硬件环境中。图3是根据本发明实施例的一种数据传输方法的硬件环境的示意图。如图3所示,服务器302通过网络与终端304进行连接,上述网络包括但不限于:广域网、城域网或局域网,终端304并不限定于PC、手机、平板电脑等。本发明实施例的数据传输的方法可以由服务器302来执行,也可以由终端304来执行,还可以是由服务器302和终端304共同执行。其中,终端304执行本发明实施例的数据传输的方法也可以是由安装在其上的目标客户端来执行。
图4是根据本发明实施例的一种数据传输的方法的流程图。如图4所示,该方法可以包括以下步骤:
步骤S402,接收第一目标对象发送的第一请求。
在本发明上述步骤S402提供的技术方案中,接收第一目标对象发送的第一请求,其中,第一请求用于请求通过网络向第二目标对象传输用于进行远程调试的第一目标数据。
在远程调试中,第一目标对象通过发送第一请求以请求通过网络传输用于进行远程调试的第一目标数据,比如,第一目标数据通过互联网进行远程传输,该第一目标数据可以为远程调试中的测试数据,可以为安装包。
上述远程调试是一种使用远程进行开发调试的技术,可以解决本地设备缺少或型号不全的问题。远程调试可以有多个平台支持,比如,utest.qq.com;http://testin.cn/;http://mqc.aliyun.com/等。这些平台实现的方案大同小异,用户端都需要一个工具来实现工具服务(adb Server)到后台服务(Server)的通信,同时还可以提供权限、安全、引导方面的功能。其中,工具服务为通用的命令行工具(Android Debug Bridge,简称为adb)用来与安卓设备或模拟器交互。该命令行工具是一种client-Server程序,由client、Server和daemon组成。
第一目标对象可以向第二目标对象推送数据,也可以从第二目标对象拉取数据,该第一目标对象的协议类型为同步协议。可选地,用户端工具用于用户端实现用户端adbServer到后台服务器的通信,同时还可以提供权限、安全、引导方面的功能,当第一目标对象向第二目标对象推送数据时,第一目标对象为客户端,第二目标对象为终端,比如,第一目标对象为用户端adb Server,协议类型为同步协议,第二目标对象为手机,用户端工具接收用户端adb Server发送的第一请求,该第一请求用于请求通过网络向手机传输数据。可选地,当第一目标对象从第二目标对象拉取数据时,第一目标对象为终端,第二目标对象为客户端,比如,第一目标对象为手机,第二目标对象为用户端adb Server,可以通过服务端的逻辑Server模块接收终端发送的第一请求,该第一请求用于请求通过网络向用户端adbServer传输数据。
可选地,第一请求的类型为OPEN类型,用于请求与服务端建立连接,开始传输数据,第一请求的类型也可以为WRITE类型,用于请求正常地数据传输,第一请求的类型也可以为CLOSE类型,用于请求断开与服务端的连接不再与服务器传输数据。
步骤S404,响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输第一目标数据。
在本发明上述步骤S404提供的技术方案中,响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输第一目标数据,其中,第一应答消息用于模拟第二目标对象接收到第一目标数据后所发送的应答消息。
每一个请求都需要返回一个应答消息,下一个请求是基于上一请求发送过来的。在第一目标对象不用替换本地环境的情况下,在接收第一目标对象发送的第一请求之后,响应第一请求向第一目标对象发送第一应答消息,该第一应答消息为对第二目标对象接收到第一目标数据后所发送的应答消息的模拟消息,也即,第一应答消息不是第二目标对象返回的真实应答消息,而是模拟第二目标对象返回的模拟应答消息,下一个请求是基于该第一应答消息发送过来的。比如,向第一目标对象模拟返回一个READY类型的应答消息,从而实现了在第一目标对象发送一个请求之后立即接收对第二目标对象接收到第一目标数据后所发送的应答消息的模拟消息。
在接收到第一请求之后,立即通过网络向第二目标对象传输用于进行远程调试的第一目标数据,比如,用户端工具在接收到第一请求之后,立即通过服务端向目标终端传输第一目标数据。
步骤S406,接收第一目标对象响应第一应答消息发送的第二请求。
在本发明上述步骤S406提供的技术方案中,接收第一目标对象响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向第二目标对象传输用于进行远程调试的第二目标数据。
在响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输第一目标数据之后,第一目标对象接收第一应答消息,并对第一应答消息进行响应。在第一目标对象对第一应答消息进行响应之后,第一目标对象发送第二请求,用户端工具接收该第二请求,在互联网远程传输下通过该第二请求向第二目标对象传输第二目标数据,从而避免了在第一请求到达第二目标对象,且第二目标对象将应答消息返回至第一目标对象之后才发送第二请求,也即,避免了用户端adb Server发送的请求之间是串行的,在前一次请求完成之后才可以发起下一次请求所导致的降低数据传输的时间的问题,进而提高了数据传输的效率。
步骤S408,响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输第二目标数据。
在本发明上述步骤S408提供的技术方案中,响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输用于进行远程调试的第二目标数据,其中,第二应答消息用于模拟第二目标对象接收到第二目标数据后所发送的应答消息。
在接收第一目标对象响应第一应答消息发送的第二请求之后,响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输第二目标数据,该第二应答消息为对第二目标对象接收到第二目标数据后所发送的应答消息的模拟消息,也即,第二应答消息不是第二目标对象返回的真实应答消息,而是模拟第二目标对象返回的模拟应答消息,下一个请求是基于该第二应答消息发送过来的,从而实现了在第一目标对象发送一个请求之后立即接收对第二目标对象接收到第一目标数据后所发送的应答消息的模拟消息,进而达到提高数据传输的效率的效果。
在接收到第二请求之后,立即通过网络向第二目标对象传输用于进行远程调试的第二目标数据,比如,用户端工具在接收到第二请求之后,立即通过服务端向目标终端传输第二目标数据。
可选地,接收第一目标对象响应第二应答消息发送的第三请求,其中,第三请求用于请求通过网络向第二目标对象传输用于进行远程调试的第三目标数据;响应第三请求向第一目标对象发送用于模拟第二目标对象接收到第三目标数据后所发送的应答消息,并通过网络向第二目标对象传输第二目标数据。后续在数据传输时,对请求的响应以及对数据的传输与上述方法相同,此处不再赘述。
该实施例在数据传输的过程中,在第一目标对象不用替换本地环境的情况下,可以通过用户端工具将第一目标对象的同步请求转换成异步请求,进而将数据通过服务端向第二目标对象发送,从而实现了将同步协议转换成异步协议,避免了直接修改第一目标对象的协议类型导致需要替换本地环境所产生的问题,不会对用户开发测试环境造成任何影响,避免了数据在传输过程中很多潜在风险,用户仍然可以按照原有方式使用远程调试就可以实现网络加速功能,提高数据在网络传输中的传输效率。
在不用替换第一目标对象本地环境的情况下,在将同步协议转换为异步协议之后就可以充分利用用户的网络带宽和USB带宽,实现与本地USB连接基本一致的传输效果,提高了数据传输的效率。
通过上述步骤S402至步骤S408,通过接收第一目标对象发送的第一请求;响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输用于进行远程调试的第一目标数据;接收第一目标对象响应第一应答消息发送的第二请求;响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输用于进行远程调试的第二目标数据的方式,由于通过对第一目标对象的请求进行响应,立即向第一目标对象返回模拟第二目标对象返回的应答信息,触发第一目标对象发送下一请求,并通过网络传输数据,以此方式对后续请求进行响应,将数据传输的同步协议转换成了异步协议,达到了对数据进行传输的目的,从而实现了提高数据的传输效率的技术效果,进而解决了相关技术中数据传输的传输效率低的技术问题。
作为一种可选的实施例,在通过网络向第二目标对象传输用于进行远程调试的第一目标数据之后,接收第二目标对象通过网络发送的第三应答消息;在第一应答消息发送至第一目标对象的情况下,丢弃第三应答消息。
图5是根据本发明实施例的另一种数据传输方法的流程图。如图5所示,该数据传输方法还包括以下步骤:
步骤S501,接收第二目标对象通过网络发送的第三应答消息。
在本发明上述步骤S501提供的技术方案中,接收第二目标对象通过网络发送的第三应答消息,其中,第三应答消息为在第二目标对象接收到第一目标数据后发送的应答消息。
对于第二目标对象,在接收到数据之后会返回应答消息以示已经接收到数据。第三应答消息为在第二目标对象接收到第一目标数据后发送的应答消息,也即,为第二目标对象返回的真实的应答消息。该第三应答消息通过服务端进行接收,比如,第二目标对象为目标终端,接收目标终端通过服务端发送的第三应答消息。
步骤S502,判断第一应答消息是否发送至第一目标对象。
在本发明上述步骤S502提供的技术方案中,判断第一应答消息是否发送至第一目标对象。
第一应答消息用于模拟第二目标对象接收到第一目标数据后所发送的应答消息。但是由于环境因素的影响,第一应答消息在向第一目标对象发送的过程中,不能每次都能保证第一应答消息都可以被第一目标对象接收。在接收第二目标对象通过网络发送的第三应答消息之后,判断第一应答消息是否发送至第一目标对象,比如,判断在接收第一请求时发出的模拟READY消息是否已经返回至用户端adb Server,进而保证第一目标对象每次发送的请求只能对应一个应答消息。
步骤S503,丢弃第三应答消息。
在本发明上述步骤S503提供的技术方案中,如果判断出第一应答消息发送至第一目标对象,则丢弃第三应答消息。
在判断第一应答消息是否发送至第一目标对象之后,如果判断出第一应答消息发送至第一目标对象,则直接丢弃第三应答消息,从而保证第一目标对象在发出第一请求之后,只接收与第一请求对应的一个应答消息,也即,只接收第一应答消息。比如,如果判断出在接收第一请求时发出的模拟READY消息已经返回至用户端adb Server,则丢弃目标终端返回的第三应答消息,从而保证了第一目标对象每次发送的请求只能对应一个应答消息。
该实施例通过在通过网络向第二目标对象传输用于进行远程调试的第一目标数据之后,接收第二目标对象通过网络发送的第三应答消息,其中,第三应答消息为第二目标对象在接收到第一目标数据后发送的应答消息;判断第一应答消息是否发送至第一目标对象;如果判断出第一应答消息发送至第一目标对象,则丢弃第三应答消息,保证了第一目标对象发送的请求与应答消息相对应的目的。
作为一种可选的实施例,在判断第一应答消息是否发送至第一目标对象之后,如果判断出第一应答消息未发送至第一目标对象,将第三应答消息向第一目标对象发送,进而接收第一目标对象响应第三应答消息发送的请求;响应上述请求向第一目标对象发送应答消息,并通过网络向第二目标对象传输目标数据,从而提高了数据传输的效率。
作为一种可选的实施例,步骤S402,接收第一目标对象发送的第一请求包括:接收目标客户端发送的第一请求,其中,第一目标对象包括目标客户端,第二目标对象包括目标终端,目标客户端位于个人电脑PC端,目标终端为移动终端;步骤S404,响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输用于进行远程调试的第一目标数据包括:响应第一请求向目标客户端发送第一应答消息,并通过网络向目标终端传输用于进行远程调试的第一目标数据,其中,第一应答消息用于模拟对目标终端接收到第一目标数据后所发送的应答消息;步骤S406,接收第一目标对象响应第一应答消息发送的第二请求包括:接收目标客户端响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向传输用于进行远程调试的第二目标数据;步骤S408,响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输用于进行远程调试的第二目标数据包括:响应第二请求向目标客户端发送第二应答消息,并通过网络向传输用于进行远程调试的第二目标数据,其中,第二应答消息用于模拟目标终端接收到第一目标数据后所发送的应答消息。
图6是根据本发明实施例的另一种数据传输方法的流程图。如图6所示,该数据传输方法包括以下步骤:
步骤S601,接收目标客户端发送的第一请求。
在本发明上述步骤S601提供的技术方案中,接收目标客户端发送的第一请求,其中,第一请求用于请求通过网络向目标终端传输用于进行远程调试的第一目标数据,第一目标对象包括目标客户端,第二目标对象包括目标终端,目标客户端位于个人电脑PC端,目标终端为移动终端。
在远程调试中,目标客户端通过发送第一请求以请求通过网络传输用于进行远程调试的第一目标数据。目标客户端可以向目标终端推送数据,比如,目标客户端向目标终端推送安装包,也可以从目标终端拉取数据,该目标客户端的协议类型为同步协议。可选地,目标客户端为用户端adbServer,协议类型为同步协议,目标终端为手机,可以包括多个手机,用户端工具接收用户端adb Server发送的第一请求,该第一请求用于请求通过网络向手机传输数据。
可选地,第一请求的类型为OPEN类型,用于请求与服务端建立连接,开始传输数据,第一请求的类型也可以为WRITE类型,用于请求正常地数据传输,每一个WRITE类型的请求对应一个READY类型的消息,第一请求的类型也可以为CLOSE类型,用于请求断开与服务端的连接不再与服务器传输数据。
步骤S602,响应第一请求向目标客户端发送第一应答消息,并通过网络向目标终端传输第一目标数据。
在本发明上述步骤S602提供的技术方案中,响应第一请求向目标客户端发送第一应答消息,并通过网络向目标终端传输第一目标数据,其中,第一应答消息用于模拟目标终端接收到第一目标数据后所发送的应答消息。
在目标客户端不用替换本地环境的情况下,在接收目标客户端发送的第一请求之后,响应第一请求向目标客户端发送第一应答消息,该第一应答消息为对目标终端接收到第一目标数据后所发送的应答消息的模拟消息,也即,第一应答消息不是目标终端返回的真实应答消息,而是模拟目标终端返回的模拟应答消息,下一个请求是基于该第一应答消息发送过来的。比如,向目标客户端模拟返回一个READY类型的应答消息,从而实现了在目标客户端发送一个请求之后立即接收对目标终端接收到第一目标数据后所发送的应答消息的模拟消息。
在接收到第一请求之后,立即通过网络向目标终端传输用于进行远程调试的第一目标数据,比如,用户端工具在接收到第一请求之后,立即通过服务端向目标终端传输第一目标数据。
步骤S603,接收目标客户端响应第一应答消息发送的第二请求。
在本发明上述步骤S603提供的技术方案中,接收目标客户端响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向传输用于进行远程调试的第二目标数据。
在响应第一请求向目标客户端发送第一应答消息,并通过网络向目标终端传输第一目标数据之后,目标客户端接收第一应答消息,并对第一应答消息进行响应。在目标客户端对第一应答消息进行响应之后,目标客户端发送第二请求,用户端工具接收该第二请求,在互联网远程传输下通过该第二请求向目标终端传输第二目标数据,从而避免了在第一请求到达目标终端,且目标终端将应答消息返回至目标客户端之后才发送第二请求,降低了数据传输的时间,进而提高了数据传输的效率。
步骤S604,响应第二请求向目标客户端发送第二应答消息,并通过网络向目标终端传输第二目标数据。
在本发明上述步骤S604提供的技术方案中,响应第二请求向目标客户端发送第二应答消息,并通过网络向目标终端传输第二目标数据,其中,第二应答消息用于模拟目标终端接收到第二目标数据后所发送的应答消息。
在接收目标客户端响应第一应答消息发送的第二请求之后,响应第二请求向目标客户端发送第二应答消息,并通过网络向目标终端传输第二目标数据,该第二应答消息为对目标终端接收到第二目标数据后所发送的应答消息的模拟消息,也即,第二应答消息不是目标终端返回的真实应答消息,而是模拟目标终端返回的模拟应答消息,下一个请求是基于该第二应答消息发送过来的,从而实现了在目标客户端发送一个请求之后立即接收对目标终端接收到第一目标数据后所发送的应答消息的模拟消息。
在接收到第二请求之后,立即通过网络向目标终端传输用于进行远程调试的第二目标数据,比如,用户端工具在接收到第二请求之后,立即通过服务端向目标终端传输第二目标数据。
可选地,接收目标客户端响应第二应答消息发送的第三请求,其中,第三请求用于请求通过网络向目标终端传输用于进行远程调试的第三目标数据;响应第三请求向目标客户端发送对目标终端接收到第三目标数据后所发送的应答消息的模拟消息,并通过网络向目标终端传输第二目标数据。后续在目标客户端与目标终端之间的数据传输时,对请求的响应以及对数据的传输与上述方法相同,此处不再赘述。
该实施例在数据传输的过程中,在目标客户端不用替换本地环境的情况下,可以通过用户端工具将目标客户端的同步请求转换成异步请求,进而将数据通过服务端向目标终端发送,从而实现了将同步协议转换成异步协议,避免了直接修改目标客户端的协议类型导致需要替换本地环境所产生的问题,不会对用户开发测试环境造成任何影响,避免了数据在传输过程中很多潜在风险,用户仍然可以按照原有方式使用远程调试就可以实现网络加速功能,提高数据在网络传输中的传输效率。
可选地,上述步骤S601至步骤S604可以由位于个人电脑PC端中用于执行协议类型转换的工具服务执行,提高了数据传输的效率。
该实施例通过接收目标客户端发送的第一请求,其中,第一请求用于请求通过网络向目标终端传输用于进行远程调试的第一目标数据,第一目标对象包括目标客户端,第二目标对象包括目标终端,目标客户端位于个人电脑PC端,目标终端为移动终端;响应第一请求向目标客户端发送第一应答消息,并通过网络向目标终端传输第一目标数据,其中,第一应答消息用于模拟目标终端接收到第一目标数据后所发送的应答消息;接收目标客户端响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向目标终端传输用于进行远程调试的第二目标数据;响应第二请求向目标客户端发送第二应答消息,并通过网络向目标终端传输第二目标数据,其中,第二应答消息用于模拟目标终端接收到第二目标数据后所发送的应答消息,降低了数据传输的时间。
作为一种可选的实施例,在通过网络向目标终端传输第一目标数据之后,接收目标终端通过网络发送的第四应答消息;在第一应答消息发送至目标客户端的情况下,丢弃第四应答消息。
图7是根据本发明实施例的另一种数据传输方法的流程图。如图7所示,该数据传输方法包括以下步骤:
步骤S701,接收目标终端通过网络发送的第四应答消息。
在本发明上述步骤S701提供的技术方案中,接收目标终端通过网络发送的第四应答消息,其中,第四应答消息为在目标终端接收到第一目标数据后发送的应答消息。
对于目标终端,在接收到数据之后会返回应答消息以示已经接收到数据。第四应答消息为在目标终端接收到第一目标数据后发送的应答消息,也即,为目标终端返回的真实的应答消息。该第四应答消息通过服务端进行接收。
步骤S702,判断第一应答消息是否发送至目标客户端。
在本发明上述步骤S702,提供的技术方案中,判断第一应答消息是否发送至目标客户端。
第一应答消息用于模拟目标终端接收到第一目标数据后所发送的应答消息。但是由于环境因素的影响,第一应答消息在向目标客户端发送的过程中,不能每次都能保证第一应答消息都可以被目标客户端接收。在接收目标终端通过网络发送的第四应答消息之后,判断第一应答消息是否发送至目标终端,比如,判断在接收第一请求时发出的模拟READY消息是否已经返回至用户端adb Server,进而保证第一目标对象每次发送的请求只能对应一个应答消息。
步骤S703,丢弃第四应答消息。
在本发明上述步骤S703提供的技术方案中,如果判断出第一应答消息发送至目标客户端,则丢弃第四应答消息。
在判断第一应答消息是否发送至目标客户端之后,如果判断出第一应答消息发送至目标客户端,则直接丢弃第四应答消息,从而保证目标客户端在发出第一请求之后,只接收与第一请求对应的一个应答消息。比如,如果判断出在接收第一请求时发出的模拟READY消息已经返回至用户端adb Server,则丢弃目标终端返回的第四应答消息,从而保证了目标客户端每次发送的请求只能对应一个应答消息。
该实施例在在通过网络向目标终端传输第一目标数据之后,接收目标终端通过网络发送的第四应答消息,其中,第四应答消息为在目标终端接收到第一目标数据后发送的应答消息;判断第一应答消息是否发送至目标客户端;如果判断出第一应答消息发送至目标客户端,则丢弃第四应答消息,保证了第一目标对象发送的请求与应答消息相对应的目的。
作为一种可选的实施例,在判断第一应答消息是否发送至目标客户端之后,如果判断出第一应答消息未发送至目标客户端,将第四应答消息向目标客户端发送。比如,如果判断出在接收第一请求时发出的模拟READY消息未返回至用户端adb Server,可以将第四应答消息向用户端adb Server发送,从而保证了目标客户端每次发送的请求只能对应一个应答消息,进而接收目标客户端响应第一应答消息发送的第二请求;响应第二请求向目标客户端发送第二应答消息,并通过网络向目标终端传输第二目标数据,提高了数据传输的效率。
作为一种可选的实施例,步骤S402,接收第一目标对象发送的第一请求包括:接收目标终端发送的第一请求,其中,第一请求用于请求通过网络向目标客户端传输用于进行远程调试的第一目标数据,第一目标对象包括目标终端,第二目标对象包括目标客户端,目标客户端位于个人电脑PC端,目标终端为移动终端;步骤S404,响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输第一目标数据包括:响应第一请求向目标终端发送第一应答消息,并通过网络向目标客户端传输第一目标数据,其中,第一应答消息用于模拟目标客户端接收到第一目标数据后所发送的应答消息;步骤S406,接收第一目标对象响应第一应答消息发送的第二请求包括:接收目标终端响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向目标客户端传输用于进行远程调试的第二目标数据;步骤S408,响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输第二目标数据包括:响应第二请求向目标终端发送第二应答消息,并通过网络向目标客户端传输第二目标数据,其中,第二应答消息用于模拟目标客户端接收到第二目标数据后所发送的应答消息。
图8是根据本发明实施例的另一种数据传输方法的流程图。如图8所示,该方法包括以下步骤:
步骤S801,接收目标终端发送的第一请求。
在本发明上述步骤S801提供的技术方案中,接收目标终端发送的第一请求,其中,第一请求用于请求通过网络向目标客户端传输用于进行远程调试的第一目标数据,第一目标对象包括目标终端,第二目标对象包括目标客户端,目标客户端位于个人电脑PC端,目标终端为移动终端。
在远程调试中,目标终端通过发送第一请求以请求通过网络传输用于进行远程调试的第一目标数据。目标终端可以向目标客户端发送数据,也即,目标客户端从目标终端拉取数据,该目标终端的协议类型为同步协议。可选地,目标终端为手机,可以包括多个手机,协议类型为同步协议,目标客户端为用户端adb Server,服务端的服务端逻辑Server接收目标终端发送的第一请求,该第一请求用于请求通过网络向目标客户端传输数据。
可选地,第一请求的类型为OPEN类型,用于请求与服务端建立连接,开始传输数据,第一请求的类型也可以为WRITE类型,用于请求正常地数据传输,每一个WRITE类型的请求对应一个READY类型的消息,第一请求的类型也可以为CLOSE类型,用于请求断开与服务端的连接不再与服务器传输数据。
步骤S802,响应第一请求向目标终端发送第一应答消息,并通过网络向目标客户端传输第一目标数据。
在本发明上述步骤S802提供的技术方案中,响应第一请求向目标终端发送第一应答消息,并通过网络向目标客户端传输第一目标数据,其中,第一应答消息用于模拟目标客户端接收到第一目标数据后所发送的应答消息。
在接收目标终端发送的第一请求之后,响应第一请求向目标终端发送第一应答消息,该第一应答消息用于模拟目标客户端接收到第一目标数据后所发送的应答消息,也即,第一应答消息不是目标客户端返回的真实应答消息,而是模拟目标客户端返回的模拟应答消息,下一个请求是基于该第一应答消息发送过来的。比如,向目标终端模拟返回一个READY类型的应答消息,从而实现了在目标终端发送一个请求之后立即接收对目标客户端接收到第一目标数据后所发送的应答消息的模拟消息。
在接收到第一请求之后,立即通过网络向目标客户端传输用于进行远程调试的第一目标数据,比如,服务端逻辑Server在接收到第一请求之后,立即通过服务端接入服务向目标客户端传输第一目标数据。
步骤S803,接收目标终端响应第一应答消息发送的第二请求。
在本发明上述步骤S803提供的技术方案中,接收目标终端响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向目标客户端传输用于进行远程调试的第二目标数据。
在响应第一请求向目标终端发送第一应答消息,并通过网络向目标客户端传输第一目标数据之后,目标终端接收第一应答消息,并对第一应答消息进行响应。在目标终端对第一应答消息进行响应之后,目标终端发送第二请求,服务端逻辑Server接收该第二请求,在互联网远程传输下通过该第二请求向目标客户端传输第二目标数据,从而避免了在第一请求到达目标客户端,且目标客户端将应答消息返回至目标终端之后才发送第二请求,降低了数据传输的时间,进而提高了数据传输的效率。
步骤S804,响应第二请求向目标终端发送第二应答消息,并通过网络向目标客户端传输第二目标数据。
在本发明上述步骤S804提供的技术方案中,响应第二请求向目标终端发送第二应答消息,并通过网络向目标客户端传输第二目标数据,其中,第二应答消息用于模拟目标客户端接收到第二目标数据后所发送的应答消息。
在接收目标终端响应第一应答消息发送的第二请求之后,响应第二请求向目标终端发送第二应答消息,并通过网络向目标客户端传输第二目标数据,该第二应答消息用于模拟目标客户端接收到第二目标数据后所发送的应答消息,也即,第二应答消息不是目标客户端返回的真实应答消息,而是模拟目标客户端返回的模拟应答消息,下一个请求是基于该第二应答消息发送过来的,从而实现了在目标终端发送一个请求之后立即接收对目标客户端接收到第一目标数据后所发送的应答消息的模拟消息。
在接收到第二请求之后,立即通过网络向目标客户端传输用于进行远程调试的第二目标数据,比如,用户端逻辑Server在接收到第二请求之后,立即通过服务端向目标客户端传输第二目标数据。
可选地,接收目标终端响应第二应答消息发送的第三请求,其中,第三请求用于请求通过网络向目标客户端传输用于进行远程调试的第三目标数据;响应第三请求向目标终端发送对目标客户端接收到第三目标数据后所发送的应答消息的模拟消息,并通过网络向目标客户端传输第二目标数据。后续在目标终端与目标客户端之间的数据传输时,对请求的响应以及对数据的传输与上述方法相同,此处不再赘述。
可选地,上述步骤S801至步骤S804可以由位于服务器中用于执行协议类型转换的逻辑服务执行,提高了数据传输的效率。
该实施例在数据传输的过程中,可以通过服务端逻辑Server将目标终端的同步请求转换成异步请求,进而将数据通过服务端向目标客户端发送,从而实现了将同步协议转换成异步协议,提高数据在网络传输中的传输效率。
该实施例通过接收目标终端发送的第一请求;响应第一请求向目标终端发送第一应答消息,并通过网络向目标客户端传输第一目标数据;接收目标终端响应第一应答消息发送的第二请求;响应第二请求向目标终端发送第二应答消息,并通过网络向目标客户端传输第二目标数据;网络向目标客户端传输用于进行远程调试的第一目标数据,响应第一请求向目标终端发送第一应答消息,并通过网络向目标客户端传输用于进行远程调试的第一目标数据,接收目标终端响应第一应答消息发送的第二请求,降低了数据传输时间,进而提高了数据传输的效率。
作为一种可选的实施例,在通过网络向目标客户端传输用于进行远程调试的第一目标数据之后,接收目标客户端通过网络发送的第五应答消息,在判断第一应答消息是否发送至目标终端;如果判断出第一应答消息发送至目标终端,则丢弃第五应答消息。
图9是根据本发明实施例的另一种数据传输方法的流程图。如图9所示,该数据传输方法还包括以下步骤:
步骤S901,接收目标客户端通过网络发送的第五应答消息。
在本发明上述步骤S901提供的技术方案中,接收目标客户端通过网络发送的第五应答消息,其中,第五应答消息为在目标客户端接收到第一目标数据后发送的应答消息。
对于目标客户端,在接收到数据之后会返回应答消息以示已经接收到数据。第五应答消息为在目标客户端接收到第一目标数据后发送的应答消息,也即,为目标客户端返回的真实的应答消息。该第五应答消息通过服务端进行接收。
步骤S902,判断第一应答消息是否发送至目标终端。
在本发明上述步骤S902提供的技术方案中,判断第一应答消息是否发送至目标终端。
第一应答消息用于模拟目标终端接收到第一目标数据后所发送的应答消息。在接收目标终端通过网络发送的第三应答消息之后,判断第一应答消息是否发送至目标客户端,比如,判断在接收第一请求时发出的模拟READY消息是否已经返回至手机,进而保证目标终端每次发送的请求只能对应一个应答消息。
步骤S903,丢弃第五应答消息。
在本发明上述步骤S903提供的技术方案中,如果判断出第一应答消息发送至目标终端,则丢弃第五应答消息。
在判断第一应答消息是否发送至目标终端之后,如果判断出第一应答消息发送至目标终端,则直接丢弃第三应答消息,从而保证目标终端在发出第一请求之后,只接收与第一请求对应的一个应答消息。比如,如果判断出在接收第一请求时发出的模拟READY消息已经返回至手机,则丢弃用户端adb Server返回的第三应答消息,从而保证了目标终端每次发送的请求只能对应一个应答消息。
该实施例在通过网络向目标客户端传输用于进行远程调试的第一目标数据之后,接收目标客户端通过网络发送的第三应答消息,其中,第三应答消息在目标客户端接收到第一目标数据后发送;判断第一应答消息是否发送至目标终端;如果判断出第一应答消息发送至目标终端,则丢弃第三应答消息,实现降低数据传输时间的技术效果。
作为一种可选的实施例,在判断第一应答消息是否发送至目标终端之后,如果判断出第一应答消息未发送至目标终端,将第五应答消息向目标终端发送。比如,如果判断出在接收第一请求时发出的模拟READY消息未返回至手机时,可以将第五应答消息向手机发送,从而保证了目标终端每次发送的请求只能对应一个应答消息,进而接收目标终端响应第一应答消息发送的第二请求;响应第二请求向目标终端发送第二应答消息,并通过网络向目标客户端传输第二目标数据,提高了数据传输的效率。
作为一种可选的实施例,接收第一目标对象发送的第一请求包括:通过内置调试工具接收按照同步协议类型发送的第一请求,其中,内置调试工具用于将同步协议类型转换为异步协议类型。
在接收第一目标对象发送的第一请求时,通过内置调试工具接收按照同步协议类型发送的第一请求,内置调试工具可以用于执行响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输第一目标数据,其中,第一应答消息用于模拟第二目标对象接收到第一目标数据后所发送的应答消息;接收第一目标对象响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向第二目标对象传输用于进行远程调试的第二目标数据;响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输第二目标数据,其中,第二应答消息用于模拟第二目标对象接收到第二目标数据后所发送的应答消息,进而将同步协议类型转换为异步协议类型,避免了直接修改第一目标对象的协议类型导致需要替换本地环境所产生的问题,不会对用户开发测试环境造成任何影响,避免了数据在传输过程中很多潜在风险,用户仍然可以按照原有方式使用远程调试就可以实现网络加速功能,提高数据在网络传输中的传输效率。
作为一种可选的实施例,内置调试工具包括:位于个人电脑PC端中用于执行协议类型转换的工具服务,或位于服务器中用于执行协议类型转换的逻辑服务。
位于个人电脑PC端中用于执行协议类型转换的工具服务可以为用户端工具,位于服务器中用于执行协议类型转换的逻辑服务可以为服务端逻辑Server。
实施例2
下面结合优选的实施例对本发明的技术方案进行说明,具体以用户端adb Server与安卓设备之间的数据传输进行举例,其中,Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑等。
在数据传输时,一般是将同步协议转换成异步协议,直接修改adbServer的协议类型,这种方式在用户端需要替换本地adb环境,比如,有些开发工具和第三方工具需要特定的adb工具,在强制将同步协议替换为异步协议的情况下会使这些工具不可用。另外,用户在心理上也会排斥替换本地adb环境,使用户体验很不友好。图10是根据本发明实施例的一种数据传输的结构示意图。如图10所示,用户端包括用户端adb Server,该用户端adbServer和用户端工具相连接,服务端包括接入服务(Server)和手机池,该手机池包括多个手机。
而本发明实施例在用户端不需要更换本地adb的前提下,通过远程调试用户端工具模块可以将同步协议转换成异步协议。该实施例不会对用户开发测试环境造成任何影响,避免了很多在数据传输过程中潜在风险,用户还是可以按照原有方式使用远程调试就可以实现网络加速功能。
该实施例的远程调试可以解决APP应用开发测试过程中缺少机型或者机型不全的问题。该实施例的相关功能主要在用户端工具和服务端逻辑Server中实现。用户只需启动客户端工具或者以库(lib)的方式将客户端工具引入到项目中,进而实现网络加速功能。
下面对本发明的实施例的方案进行举例说明:
图11是根据本发明实施例的另一种数据传输的结构示意图。如图11所示,该数据传输通过用户端、服务端和手机池实现,其中,用户端包括用户端adb Server和用户端工具,服务端包括接入Server和逻辑Server,手机池包括多个手机。
与图10所示的数据传输的结构示意图相比,增加了逻辑Server模块,网络加速功能在用户端工具和服务端逻辑Server中实现。通过在用户端工具和服务端逻辑Server中添加同步协议转异步协议的功能,将adb底层的同步协议以异步协议的方式发送出去,这样就可以解决同步协议造成的延迟问题,从而充分利用USB和网络带宽。本方案已经在utest.qq.com平台使用,取得了很好的效果。
图12是根据本发明实施例的一种数据传输的流程示意图。如图12所示,以数据从用户端adb Server到手机端为例,用户端工具接收用户端adbServer发送的第一请求,其中,第一请求用于请求通过网络向手机端传输用于进行远程调试的第一目标数据;用户端工具响应第一请求向用户端adb Server发送第一应答消息,并通过服务端接入服务、服务端逻辑Server向手机端传输第一目标数据,其中,第一应答消息为对手机端接收到第一目标数据后所发送的应答消息的模拟消息;接收用户端adb Server响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向手机端传输用于进行远程调试的第二目标数据;响应第二请求向用户端adb serve发送第二应答消息,并通过网络向第手机端传输第二目标数据,其中,第二应答消息为对手机端接收到第二目标数据后所发送的应答消息的模拟消息。对于第三请求、第n请求的响应与数据传输与上述方法类似,此处不再赘述,实现了在用户端工具的拦截处理下,将用户端adb Server的同步请求转换成异步请求,将数据发送到服务器端,降低了数据传输的时间,进而提高了数据传输的效率。
可选地,数据从手机端到用户端adb Server的情况与此类似,此处不再赘述。
图13是根据本发明实施例的一种数据传输方向的示意图。如图13所示,用户端adbServer发送的请求包括OPEN类型、WRITE类型、READY类型、CLOSE类型,其中,OPEN类型用于请求与服务端建立连接,开始传输数据,WRITE类型用于请求正常地数据传输,READY类型为对WRITE类型请求的响应,CLOSE类型用于请求断开与服务端的连接不再与服务器传输数据。箭头用于表示数据的传输方向。每一个请求消息都需要返回一个READY类型的消息,在上一个READY类型的消息返回之前不会发送下一个WRITE类型的请求消息。
该实施例在用户端工具和服务端逻辑Server中做了模拟READY消息的返回,这样在用户端adb Server发送一个请求之后立即就会收到模拟返回的READY消息,然后继续发送下一个请求。在手机端向用户端工具返回真实的READY消息时,先判断是否已经向用户端adb Server发送过模拟返回的READY消息,如果判断出已经向用户端adb Server发送过模拟返回的READY消息,则直接丢弃该消息,这样在用户端adb Server看来还是一个请求对应一个READY消息的应答。通过这种方式就把同步协议转换成了异步协议,转换之后就可以充分利用用户的网络带宽和USB带宽,实现与本地USB连接基本一致的传输效果,提高了数据传输的效率。
在使用该实施例提供的方案之后,相比于原来在替换adb Server的本地环境的情况下将同步协议修改为异步协议的方法,在60ms的网络延迟情况下,安装50M左右的APK速度提高了90倍左右,与通过USB在本地传输数据的速度基本一样,进而提高了数据传输的效率。
加速逻辑实现上本方案放在了用户端工具和服务端逻辑Server中,也可以直接通过修改adb的方式实现,不过这种方式用户需要替换adb,这样会导致依赖关系风险,体验不是很好。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,网络,或者网络设备等)执行本发明各个实施例所述的方法。
实施例3
根据本发明实施例,还提供了一种用于实施上述数据传输方法的数据传输装置。图14是根据本发明实施例的一种数据传输装置的示意图。如图14所示,该数据传输装置包括:第一接收单元10、第一处理单元20、第二接收单元30和第二处理单元40。
第一接收单元10,用于接收第一目标对象发送的第一请求,其中,第一请求用于请求通过网络向第二目标对象传输用于进行远程调试的第一目标数据。
第一处理单元20,用于响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输第一目标数据,其中,第一应答消息用于模拟第二目标对象接收到第一目标数据后所发送的应答消息。
第二接收单元30,用于接收第一目标对象响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向第二目标对象传输用于进行远程调试的第二目标数据。
第二处理单元40,用于响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输第二目标数据,其中,第二应答消息用于模拟第二目标对象接收到第二目标数据后所发送的应答消息。
图15是根据本发明实施例的另一种数据传输装置的示意图。如图15所示,该数据传输装置包括:第一接收单元10、第一处理单元20、第二接收单元30和第二处理单元40。该数据传输装置还包括:第三接收单元50、判断单元60和丢弃单元70。
需要说明的是,该实施例的第一接收单元10、第一处理单元20、第二接收单元30和第二处理单元40与图14所示实施例的数据传输装置中的作用相同,此处不再赘述。
第三接收单元50,用于在通过网络向第二目标对象传输第一目标数据之后,接收第二目标对象通过网络发送的第三应答消息,其中,第三应答消息为在第二目标对象接收到第一目标数据后发送的应答消息。
判断单元60,用于判断第一应答消息是否发送至第一目标对象。
丢弃单元70,用于在判断出第一应答消息发送至第一目标对象时,则丢弃第三应答消息
图16是根据本发明实施例的另一种数据传输装置的示意图。如图16所示,该数据传输装置包括:第一接收单元10、第一处理单元20、第二接收单元30、第二处理单元40、第三接收单元50、判断单元60和丢弃单元70。该数据传输装置还包括:发送单元80。
需要说明的是,该实施例的第一接收单元10、第一处理单元20、第二接收单元30、第二处理单元40、第三接收单元50、判断单元60和丢弃单元70与图15所示实施例的数据传输装置中的作用相同,此处不再赘述。
发送单元90,用于在判断第一应答消息是否发送至第一目标对象之后,在判断出第一应答消息未发送至第一目标对象时,向第一目标对象发送第三应答消息。
需要说明的是,该实施例中的第一接收单元10可以用于执行本申请实施例1中的步骤S402,该实施例中的第一处理单元20可以用于执行本申请实施例1中的步骤S404,该实施例中的第二接收单元30可以用于执行本申请实施例1中的步骤S406,该实施例中的第二处理单元40可以用于执行本申请实施例1中的步骤S408。
该实施例通过第一接收单元10接收第一目标对象发送的第一请求,其中,第一请求用于请求通过网络向第二目标对象传输用于进行远程调试的第一目标数据,第一处理单元20响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输第一目标数据,其中,第一应答消息用于模拟第二目标对象接收到第一目标数据后所发送的应答消息,通过第二接收单元30接收第一目标对象响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向第二目标对象传输用于进行远程调试的第二目标数据,通过第二处理单元40响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输第二目标数据,其中,第二应答消息用于模拟第二目标对象接收到第二目标数据后所发送的应答消息,由于通过对第一目标对象的请求进行响应,立即向第一目标对象返回模拟第二目标对象返回的应答信息,触发第一目标对象发送下一请求,并通过网络传输数据,以此方式对后续请求进行响应,将数据传输的同步协议转换成了异步协议,达到了对数据进行传输的目的,从而实现了提高数据的传输效率的技术效果,进而解决了相关技术中数据传输的传输效率低的技术问题。
此处需要说明的是,上述单元和模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图3所示的硬件环境中,可以通过软件实现,也可以通过硬件实现,其中,硬件环境包括网络环境。
实施例4
根据本发明实施例,还提供了一种用于实施上述数据传输方法的网络或终端。
图17是根据本发明实施例的一种终端的结构框图。如图17所示,该终端可以包括:一个或多个(图中仅示出一个)处理器171、存储器173、以及传输装置175,如图17所示,该终端还可以包括输入输出设备177。
其中,存储器173可用于存储软件程序以及模块,如本发明实施例中的数据传输方法和装置对应的程序指令/模块,处理器171通过运行存储在存储器173内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据传输方法。存储器173可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器173可进一步包括相对于处理器171远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述的传输装置175用于经由一个网络接收或者发送数据,还可以用于处理器与存储器之间的数据传输。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置175包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置175为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
其中,具体地,存储器173用于存储应用程序。
处理器171可以通过传输装置175调用存储器173存储的应用程序,以执行下述步骤:
接收第一目标对象发送的第一请求,其中,第一请求用于请求通过网络向第二目标对象传输用于进行远程调试的第一目标数据;
响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输第一目标数据,其中,第一应答消息用于模拟第二目标对象接收到第一目标数据后所发送的应答消息;
接收第一目标对象响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向第二目标对象传输用于进行远程调试的第二目标数据;
响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输第二目标数据,其中,第二应答消息用于模拟第二目标对象接收到第二目标数据后所发送的应答消息。
处理器171还用于执行下述步骤:在通过网络向第二目标对象传输第一目标数据之后,接收第二目标对象通过网络发送的第三应答消息,其中,第三应答消息为在第二目标对象接收到第一目标数据后发送的应答消息;判断第一应答消息是否发送至第一目标对象;如果判断出第一应答消息发送至第一目标对象,则丢弃第三应答消息。
处理器171还用于执行下述步骤:在判断第一应答消息是否发送至第一目标对象之后,如果判断出第一应答消息未发送至第一目标对象,将第三应答消息向第一目标对象发送。
处理器171还用于执行下述步骤:接收目标客户端发送的第一请求,其中,第一请求用于请求通过网络向目标终端传输用于进行远程调试的第一目标数据,第一目标对象包括目标客户端,第二目标对象包括目标终端,目标客户端位于个人电脑PC端,目标终端为移动终端;响应第一请求向目标客户端发送第一应答消息,并通过网络向目标终端传输第一目标数据,其中,第一应答消息用于模拟目标终端接收到第一目标数据后所发送的应答消息;接收目标客户端响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向目标终端传输用于进行远程调试的第二目标数据;响应第二请求向目标客户端发送第二应答消息,并通过网络向目标终端传输第二目标数据,其中,第二应答消息用于模拟目标终端接收到第二目标数据后所发送的应答消息。
处理器171还用于执行下述步骤:在通过网络向目标终端传输第一目标数据之后,接收目标终端通过网络发送的第四应答消息,其中,第四应答消息为在目标终端接收到第一目标数据后发送的应答消息;判断第一应答消息是否发送至目标客户端;如果判断出第一应答消息发送至目标客户端,则丢弃第四应答消息。
处理器171还用于执行下述步骤:在判断第一应答消息是否发送至目标客户端之后,如果判断出第一应答消息未发送至目标客户端,将第四应答消息向目标客户端发送。
处理器171还用于执行下述步骤:接收目标终端发送的第一请求,其中,第一请求用于请求通过网络向目标客户端传输用于进行远程调试的第一目标数据,第一目标对象包括目标终端,第二目标对象包括目标客户端,目标客户端位于个人电脑PC端,目标终端为移动终端;响应第一请求向目标终端发送第一应答消息,并通过网络向目标客户端传输第一目标数据,其中,第一应答消息用于模拟目标客户端接收到第一目标数据后所发送的应答消息;接收目标终端响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向目标客户端传输用于进行远程调试的第二目标数据;响应第二请求向目标终端发送第二应答消息,并通过网络向目标客户端传输第二目标数据,其中,第二应答消息用于模拟目标客户端接收到第二目标数据后所发送的应答消息。
处理器171还用于执行下述步骤:通过网络向目标客户端传输第一目标数据之后,接收目标客户端通过网络发送的第五应答消息,其中,第五应答消息为在目标客户端接收到第一目标数据后发送的应答消息;判断第一应答消息是否发送至目标终端;如果判断出第一应答消息发送至目标终端,则丢弃第五应答消息。
处理器171还用于执行下述步骤:在判断第一应答消息是否发送至目标终端之后,如果判断出第一应答消息未发送至目标终端,将第五应答消息向目标终端发送。
处理器171还用于执行下述步骤:在通过内置调试工具接收按照同步协议类型发送的第一请求,其中,内置调试工具用于将同步协议类型转换为异步协议类型。
该实施例通过接收第一目标对象发送的第一请求;响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输第一目标数据,其中,第一应答消息用于模拟第二目标对象接收到第一目标数据后所发送的应答消息;接收第一目标对象响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向第二目标对象传输用于进行远程调试的第二目标数据;响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输第二目标数据,由于通过对第一目标对象的请求进行响应,立即向第一目标对象返回模拟第二目标对象返回的应答信息,触发第一目标对象发送下一请求,并通过网络传输数据,以此方式对后续请求进行响应,将数据传输的同步协议转换成了异步协议,达到了对数据进行传输的目的,从而实现了提高数据的传输效率的技术效果,进而解决了相关技术中数据传输的传输效率低的技术问题。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
本领域普通技术人员可以理解,图17所示的结构仅为示意,终端可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile InternetDevices,MID)、PAD等终端设备。图17其并不对上述电子装置的结构造成限定。比如,终端还可包括比图17中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图17所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
实施例5
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于执行数据传输方法的程序代码。
可选地,在本实施例中,上述存储介质可以位于上述实施例所示的网络中的多个网络设备中的至少一个网络设备上。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
接收第一目标对象发送的第一请求,其中,第一请求用于请求通过网络向第二目标对象传输用于进行远程调试的第一目标数据;
响应第一请求向第一目标对象发送第一应答消息,并通过网络向第二目标对象传输第一目标数据,其中,第一应答消息用于模拟第二目标对象接收到第一目标数据后所发送的应答消息;
接收第一目标对象响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向第二目标对象传输用于进行远程调试的第二目标数据;
响应第二请求向第一目标对象发送第二应答消息,并通过网络向第二目标对象传输第二目标数据,其中,第二应答消息第二目标对象接收到第二目标数据后所发送的应答消息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在通过网络向第二目标对象传输第一目标数据之后,接收第二目标对象通过网络发送的第三应答消息,其中,第三应答消息为在第二目标对象接收到第一目标数据后发送的应答消息;判断第一应答消息是否发送至第一目标对象;如果判断出第一应答消息发送至第一目标对象,则丢弃第三应答消息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在判断第一应答消息是否发送至第一目标对象之后,如果判断出第一应答消息未发送至第一目标对象,将第三应答消息向第一目标对象发送。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:接收目标客户端发送的第一请求,其中,第一请求用于请求通过网络向目标终端传输用于进行远程调试的第一目标数据,第一目标对象包括目标客户端,第二目标对象包括目标终端,目标客户端位于个人电脑PC端,目标终端为移动终端;响应第一请求向目标客户端发送第一应答消息,并通过网络向目标终端传输第一目标数据,其中,第一应答消息用于模拟目标终端接收到第一目标数据后所发送的应答消息;接收目标客户端响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向目标终端传输用于进行远程调试的第二目标数据;响应第二请求向目标客户端发送第二应答消息,并通过网络向目标终端传输第二目标数据,其中,第二应答消息用于模拟目标终端接收到第二目标数据后所发送的应答消息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在通过网络向目标终端传输第一目标数据之后,接收目标终端通过网络发送的第四应答消息,其中,第四应答消息为在目标终端接收到第一目标数据后发送的应答消息;判断第一应答消息是否发送至目标客户端;如果判断出第一应答消息发送至目标客户端,则丢弃第四应答消息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在判断第一应答消息是否发送至目标客户端之后,如果判断出第一应答消息未发送至目标客户端,将第四应答消息向目标客户端发送。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:接收目标终端发送的第一请求,其中,第一请求用于请求通过网络向目标客户端传输用于进行远程调试的第一目标数据,第一目标对象包括目标终端,第二目标对象包括目标客户端,目标客户端位于个人电脑PC端,目标终端为移动终端;响应第一请求向目标终端发送第一应答消息,并通过网络向目标客户端传输第一目标数据,其中,第一应答消息用于模拟目标客户端接收到第一目标数据后所发送的应答消息;接收目标终端响应第一应答消息发送的第二请求,其中,第二请求用于请求通过网络向目标客户端传输用于进行远程调试的第二目标数据;响应第二请求向目标终端发送第二应答消息,并通过网络向目标客户端传输第二目标数据,其中,第二应答消息用于模拟目标客户端接收到第二目标数据后所发送的应答消息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:通过网络向目标客户端传输第一目标数据之后,接收目标客户端通过网络发送的第五应答消息,其中,第五应答消息为在目标客户端接收到第一目标数据后发送的应答消息;判断第一应答消息是否发送至目标终端;如果判断出第一应答消息发送至目标终端,则丢弃第五应答消息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在判断第一应答消息是否发送至目标终端之后,如果判断出第一应答消息未发送至目标终端,将第五应答消息向目标终端发送。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在通过内置调试工具接收按照同步协议类型发送的第一请求,其中,内置调试工具用于将同步协议类型转换为异步协议类型。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、网络或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的目标客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,比如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,比如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (12)

1.一种数据传输方法,其特征在于,包括:
接收第一目标对象发送的第一请求,其中,所述第一请求用于请求通过网络向第二目标对象传输用于进行远程调试的第一目标数据;
响应所述第一请求向所述第一目标对象发送第一应答消息,并通过所述网络向所述第二目标对象传输所述第一目标数据,其中,所述第一应答消息用于模拟所述第二目标对象接收到所述第一目标数据后所发送的应答消息;
接收所述第二目标对象通过所述网络发送的第三应答消息,其中,所述第三应答消息为在所述第二目标对象接收到所述第一目标数据后发送的应答消息;
判断所述第一应答消息是否发送至所述第一目标对象;
如果判断出所述第一应答消息发送至所述第一目标对象,则丢弃所述第三应答消息;
如果判断出所述第一应答消息未发送至所述第一目标对象,将所述第三应答消息向所述第一目标对象发送,并接收所述第一目标对象响应所述第三应答消息发送的请求,通过所述网络向所述第二目标对象传输所述第一目标对象响应所述第三应答消息发送的请求对应的目标数据;
接收所述第一目标对象响应所述第一应答消息发送的第二请求,其中,所述第二请求用于请求通过所述网络向所述第二目标对象传输用于进行远程调试的第二目标数据;
响应所述第二请求向所述第一目标对象发送第二应答消息,并通过所述网络向所述第二目标对象传输所述第二目标数据,其中,所述第二应答消息用于模拟所述第二目标对象接收到所述第二目标数据后所发送的应答消息;
在所述第一目标对象向所述第二目标对象推送数据的情况下,所述第一目标对象为客户端,所述第二目标对象为终端;
在所述第一目标对象从所述第二目标对象拉取数据的情况下,所述第一目标对象为终端,所述第二目标对象为客户端。
2.根据权利要求1所述的方法,其特征在于,
接收所述第一目标对象发送的所述第一请求包括:接收目标客户端发送的所述第一请求,其中,所述第一请求用于请求通过所述网络向目标终端传输用于进行远程调试的所述第一目标数据,所述第一目标对象包括所述目标客户端,所述第二目标对象包括所述目标终端,所述目标客户端位于个人电脑PC端,所述目标终端为移动终端;
响应所述第一请求向所述第一目标对象发送所述第一应答消息,并通过所述网络向所述第二目标对象传输所述第一目标数据包括:响应所述第一请求向所述目标客户端发送所述第一应答消息,并通过所述网络向所述目标终端传输所述第一目标数据,其中,所述第一应答消息用于模拟所述目标终端接收到所述第一目标数据后所发送的应答消息;
接收所述第一目标对象响应所述第一应答消息发送的所述第二请求包括:接收所述目标客户端响应所述第一应答消息发送的所述第二请求,其中,所述第二请求用于请求通过所述网络向所述目标终端传输用于进行远程调试的所述第二目标数据;
响应所述第二请求向所述第一目标对象发送所述第二应答消息,并通过所述网络向所述第二目标对象传输所述第二目标数据包括:响应所述第二请求向所述目标客户端发送所述第二应答消息,并通过所述网络向所述目标终端传输所述第二目标数据,其中,所述第二应答消息用于模拟所述目标终端接收到所述第二目标数据后所发送的应答消息。
3.根据权利要求2所述的方法,其特征在于,在通过所述网络向所述目标终端传输所述第一目标数据之后,所述方法还包括:
接收所述目标终端通过所述网络发送的第四应答消息,其中,所述第四应答消息为在所述目标终端接收到所述第一目标数据后发送的应答消息;
判断所述第一应答消息是否发送至所述目标客户端;
如果判断出所述第一应答消息发送至所述目标客户端,则丢弃所述第四应答消息。
4.根据权利要求3所述的方法,其特征在于,在判断所述第一应答消息是否发送至所述目标客户端之后,所述方法还包括:
如果判断出所述第一应答消息未发送至所述目标客户端,将所述第四应答消息向所述目标客户端发送。
5.根据权利要求1所述的方法,其特征在于,
接收所述第一目标对象发送的所述第一请求包括:接收目标终端发送的所述第一请求,其中,所述第一请求用于请求通过所述网络向目标客户端传输用于进行远程调试的所述第一目标数据,所述第一目标对象包括所述目标终端,所述第二目标对象包括所述目标客户端,所述目标客户端位于个人电脑PC端,所述目标终端为移动终端;
响应所述第一请求向所述第一目标对象发送所述第一应答消息,并通过所述网络向所述第二目标对象传输所述第一目标数据包括:响应所述第一请求向所述目标终端发送所述第一应答消息,并通过所述网络向所述目标客户端传输所述第一目标数据,其中,所述第一应答消息用于模拟所述目标客户端接收到所述第一目标数据后所发送的应答消息;
接收所述第一目标对象响应所述第一应答消息发送的所述第二请求包括:接收所述目标终端响应所述第一应答消息发送的所述第二请求,其中,所述第二请求用于请求通过所述网络向所述目标客户端传输用于进行远程调试的所述第二目标数据;
响应所述第二请求向所述第一目标对象发送所述第二应答消息,并通过所述网络向所述第二目标对象传输所述第二目标数据包括:响应所述第二请求向所述目标终端发送所述第二应答消息,并通过所述网络向所述目标客户端传输所述第二目标数据,其中,所述第二应答消息用于模拟所述目标客户端接收到所述第二目标数据后所发送的应答消息。
6.根据权利要求5所述的方法,其特征在于,通过所述网络向所述目标客户端传输所述第一目标数据之后,所述方法还包括:
接收所述目标客户端通过所述网络发送的第五应答消息,其中,所述第五应答消息为在所述目标客户端接收到所述第一目标数据后发送的应答消息;
判断所述第一应答消息是否发送至所述目标终端;
如果判断出所述第一应答消息发送至所述目标终端,则丢弃所述第五应答消息。
7.根据权利要求6所述的方法,其特征在于,在判断所述第一应答消息是否发送至所述目标终端之后,所述方法还包括:
如果判断出所述第一应答消息未发送至所述目标终端,将所述第五应答消息向所述目标终端发送。
8.根据权利要求1所述的方法,其特征在于,所述接收第一目标对象发送的第一请求包括:
通过内置调试工具接收按照同步协议类型发送的所述第一请求,其中,所述内置调试工具用于将所述同步协议类型转换为异步协议类型。
9.根据权利要求8所述的方法,其特征在于,所述内置调试工具包括:位于个人电脑PC端中用于执行协议类型转换的工具服务,或位于服务器中用于执行协议类型转换的逻辑服务。
10.一种数据传输装置,其特征在于,包括:
第一接收单元,用于接收第一目标对象发送的第一请求,其中,所述第一请求用于请求通过网络向第二目标对象传输用于进行远程调试的第一目标数据;
第一处理单元,用于响应所述第一请求向所述第一目标对象发送第一应答消息,并通过所述网络向所述第二目标对象传输所述第一目标数据,其中,所述第一应答消息用于模拟所述第二目标对象接收到所述第一目标数据后所发送的应答消息;
第二接收单元,用于接收所述第一目标对象响应所述第一应答消息发送的第二请求,其中,所述第二请求用于请求通过所述网络向所述第二目标对象传输用于进行远程调试的第二目标数据;
第二处理单元,用于响应所述第二请求向所述第一目标对象发送第二应答消息,并通过所述网络向所述第二目标对象传输所述第二目标数据,其中,所述第二应答消息用于模拟所述第二目标对象接收到所述第二目标数据后所发送的应答消息;
所述装置还包括:
第三接收单元,用于在通过所述网络向所述第二目标对象传输所述第一目标数据之后,接收所述第二目标对象通过所述网络发送的第三应答消息,其中,所述第三应答消息为所述第二目标对象接收到所述第一目标数据后发送的应答消息;
判断单元,用于判断所述第一应答消息是否发送至所述第一目标对象;
丢弃单元,用于在判断出所述第一应答消息发送至所述第一目标对象时,则丢弃所述第三应答消息;
发送单元,用于在判断所述第一应答消息是否发送至所述第一目标对象之后,如果判断出所述第一应答消息未发送至所述第一目标对象,将所述第三应答消息向所述第一目标对象发送,并接收所述第一目标对象响应所述第三应答消息发送的请求,通过所述网络向所述第二目标对象传输所述第一目标对象响应所述第三应答消息发送的请求对应的目标数据;
其中,在所述第一目标对象向所述第二目标对象推送数据的情况下,所述第一目标对象为客户端,所述第二目标对象为终端;
在所述第一目标对象从所述第二目标对象拉取数据的情况下,所述第一目标对象为终端,所述第二目标对象为客户端。
11.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序可被终端设备或计算机运行时执行所述权利要求1至9任一项中所述的方法。
12.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至9任一项中所述的方法。
CN201710167474.9A 2017-03-20 2017-03-20 数据传输方法和装置 Active CN108628683B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710167474.9A CN108628683B (zh) 2017-03-20 2017-03-20 数据传输方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710167474.9A CN108628683B (zh) 2017-03-20 2017-03-20 数据传输方法和装置

Publications (2)

Publication Number Publication Date
CN108628683A CN108628683A (zh) 2018-10-09
CN108628683B true CN108628683B (zh) 2021-04-09

Family

ID=63686350

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710167474.9A Active CN108628683B (zh) 2017-03-20 2017-03-20 数据传输方法和装置

Country Status (1)

Country Link
CN (1) CN108628683B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115858193B (zh) * 2022-11-24 2023-08-25 广州市易鸿智能装备有限公司 一种数据传输方法和实现业务类bussiness功能对接的方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006172441A (ja) * 2004-11-22 2006-06-29 Lg Electronics Inc デバッグ装置を遠隔制御するシステム及びその方法
CN101325625A (zh) * 2008-07-25 2008-12-17 余纯龙 一种远程手机测试系统、装置及方法
CN103873594A (zh) * 2014-04-03 2014-06-18 北京领通科技有限公司 服务转接方法及系统
CN103902358A (zh) * 2014-03-18 2014-07-02 北京领通科技有限公司 移动终端的远程调试方法、系统及移动终端
CN104967585A (zh) * 2014-04-15 2015-10-07 腾讯科技(深圳)有限公司 一种远程调试移动终端的方法和装置
CN106201745A (zh) * 2016-07-08 2016-12-07 深圳中兴网信科技有限公司 应用程序的远程调试方法、远程调试系统和终端

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100588202C (zh) * 2007-04-25 2010-02-03 烽火通信科技股份有限公司 一种基于简单网络管理协议实现错误信息返回的方法
CN101635744B (zh) * 2009-08-26 2012-08-29 华为技术有限公司 一种数据传输方法及数据传输系统以及相关设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006172441A (ja) * 2004-11-22 2006-06-29 Lg Electronics Inc デバッグ装置を遠隔制御するシステム及びその方法
CN101325625A (zh) * 2008-07-25 2008-12-17 余纯龙 一种远程手机测试系统、装置及方法
CN103902358A (zh) * 2014-03-18 2014-07-02 北京领通科技有限公司 移动终端的远程调试方法、系统及移动终端
CN103873594A (zh) * 2014-04-03 2014-06-18 北京领通科技有限公司 服务转接方法及系统
CN104967585A (zh) * 2014-04-15 2015-10-07 腾讯科技(深圳)有限公司 一种远程调试移动终端的方法和装置
CN106201745A (zh) * 2016-07-08 2016-12-07 深圳中兴网信科技有限公司 应用程序的远程调试方法、远程调试系统和终端

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于非即停调试模式的嵌入式应用级调试系统;曹粟,;《中国优秀硕士学位论文全文数据库信息科技辑(月刊)》;20140615(第06期);I137-160 *

Also Published As

Publication number Publication date
CN108628683A (zh) 2018-10-09

Similar Documents

Publication Publication Date Title
CN106843828B (zh) 界面显示、加载方法及装置
CN105450463B (zh) 硬件设备的调试方法、装置和系统
CN111327758B (zh) 摄像头共享方法及装置
CN104767775A (zh) 网页应用消息推送方法及系统
CN105260082B (zh) 一种测试数据展示方法及开发终端
CN110493028A (zh) 一种集群部署方法、系统、装置及计算机可读存储介质
CN112714158B (zh) 事务处理方法、中继网络、跨链网关、系统、介质和设备
US20150381467A1 (en) System and method thereof for dynamically testing networked target systems through simulation by a mobile device
CN109683997B (zh) 通过沙箱访问应用程序接口的方法、沙箱及沙箱设备
CN103516851B (zh) 一种无线产品云测试平台系统
CN109413210A (zh) 分布式集群系统的目标驱动升级方法、装置、设备及介质
CN104468260A (zh) 一种移动终端设备的识别方法、装置及系统
CN110312266B (zh) 终端的多系统实现wifi通信的方法和装置
CN113709243B (zh) 设备远程控制方法及装置、电子设备和存储介质
CN107181606B (zh) 用于控制网络节点的方法和装置
CN108628683B (zh) 数据传输方法和装置
CN109104292B (zh) 更新部署处理方法、相关设备和计算机可读存储介质
CN112073488A (zh) 处理请求的方法及装置
CN104917633A (zh) 模拟fota升级的方法和装置
CN104570967A (zh) 基于Android系统的远程控制方法及系统
CN112433938A (zh) 移动端应用测试的方法和装置
CN110971696B (zh) 一种实现虚拟电子卡通讯的系统和方法
CN113626402A (zh) 日志数据的获取方法和装置、电子设备和存储介质
CN112968812A (zh) 一种网络性能测试方法、装置、设备及存储介质
CN111078477A (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
GR01 Patent grant
GR01 Patent grant