android平台上利用USB存储设备进行ADB调试的方法
技术领域
本发明涉及通信技术领域,尤其涉及一种android平台上利用USB存储设备进行ADB调试的方法。
背景技术
目前几乎所有的Android平台的智能设备都可以使用USB存储设备(如U盘或者移动硬盘等),用户可以通过USB存储设备来拷贝文件、图像、音乐、视频等,实现信息资源的移动。在Android平台的智能设备中,当用户的Android平台设备发生故障的时候,需要用到Android平台自身的调试工具ADB(Android Debug Bridge),它是一个Android平台的后台程序,不断的查询接收到的调试命令和发送调试命令的结果,提供给维护人员分析和解决故障。标准的Android平台上的ADB支持USB接口连接调试(即PC机利用USB线和发生故障的Android平台设备进行连接,然后PC机发送调试命令给故障设备的ADB和故障设备的ADB发送***日志给PC机,都使用USB总线来传输)。标准的Android平台上的ADB还支持利用WIFI来远程连接故障设备的ADB,进行调试(即故障设备和PC机都连接上网络,PC机利用网络发送调试命令给故障设备的ADB,故障设备的ADB也利用网络将***日志发送给PC机)。这就存在这么一种情况:如果故障设备发生故障的部分就是WIFI(即WIFI不能正常连接上网络)且故障设备在远处(例如其他城市),无法用USB线进行连接,那么作为调试人员该如何进行***调试和故障分析呢?因此,本专利设计出一种android平台上利用USB存储设备进行ADB调试的方法,来解决这个问题。
现有技术中提供了“一种基于Android***的终端测试的方法”,见公开号为:CN102917095A,公开日为:2013-02-06的中国专利,该发明用于解决现有在开发测试软件时,需要针对不同的芯片进行设计的问题。该发明实施例的方法包括:测试端通过ADB接口,与被测终端建立Socket连接;及通过建立的Socket连接,采用ADB接口支持的通信协议,与被测终端之间进行信令交互及数据传输。由于该发明测试端通过ADB接口与被测试终端之间建立Socket连接,在对基于不同硬件平台的被测试终端进行测试时,只要采用ADB接口支持的通信协议即可进行通信,而不需要针对不同的硬件平台开发不同的测试软件,减少了测试软件开发的重复性。但该发明是针对Android***的终端测试兼容的问题,并非是针对Android***中设备发生故障,通过新增其他途径来调用自身的调试工具ADB进行调试的方案。
发明内容
本发明要解决的技术问题,在于提供一种android平台上利用USB存储设备进行ADB调试的方法,可以在现有的调试技术手段都失效的情况下,对android平台的被调试设备进行调试。
本发明是这样实现的:一种android平台上利用USB存储设备进行ADB调试的方法,所述方法需提供一调试设备和带android平台的被调试设备,所述调试设备包括:指令输入模块、USB接口以及数据解析模块;所述被调试设备包括:数据存储模块、调试工具ADB、USB接口以及指令解析模块;该方法具体包括如下步骤:
步骤1、准备一USB存储设备,确认调试设备和被调试设备都能使用该USB存储设备;USB存储设备与调试设备或者被调试设备中的USB接口连接时,调试设备或者被调试设备中均会出现一用于数据传输的读写端口;
步骤2、将USB存储设备与调试设备连接,通过指令输入模块输入一需要调试的命令,指令输入模块创建一空文件一,并将所述调试的命令存储在文件一中;
步骤3、指令输入模块利用所述读写端口将所述文件一写入到USB存储设备,拔出该USB存储设备并***被调试设备的USB接口;
步骤4、被调试设备的USB接口识别到USB存储设备***后,利用USB存储设备与之连接的读写端口,读取USB存储设备中的文件一并保存到被调试设备的android平台***中,通过指令解析模块从该文件一中提取调试命令;
步骤5、通过android平台***的进程间通讯机制socket,将调试命令发送给调试工具ADB;
步骤6、调试工具ADB获取调试命令后,执行该调试命令,形成调试的***日志,创建一个空文件二,并将***日志存储在该空文件二中;
步骤7、数据存储模块将产生的含有***日志的文件二,利用所述读写端口将所述文件二存入到USB存储设备;拔出该USB存储设备并***调试设备的USB接口;
步骤8、调试设备利用所述读写端口,获取USB存储设备中的文件二并保存到调试设备中;
步骤9、数据解析模块从该文件二中提取出***日志,进行解析得到调试结果。
本发明具有如下优点:本发明通过将USB存储设备与调试设备进行连接后获取调试命令,再将USB存储设备拔出***被调试设备中,被调试设备通过指令解析模块进行解析调试命令,并将解析后的调试命令发给调试工具ADB进行调试。本发明可以在现有的调试技术手段都失效的情况下,也能对android平台的被调试设备进行调试;且操作简单,调试效率快。
附图说明
图1为本发明方法流程示意图。
图2为本发明原理框架图。
具体实施方式
请参阅图1和图2所示,本发明为一种android平台上利用USB存储设备进行ADB调试的方法,所述方法需提供一调试设备和带android平台的被调试设备,所述调试设备包括:指令输入模块、USB接口以及数据解析模块;所述被调试设备包括:数据存储模块、调试工具ADB、USB接口以及指令解析模块;该方法具体包括如下步骤:
步骤1、准备一USB存储设备,确认调试设备和被调试设备都能使用该USB存储设备;USB存储设备与调试设备或者被调试设备中的USB接口连接时,调试设备或者被调试设备中均会出现一用于数据传输的读写端口;
步骤2、将USB存储设备与调试设备连接,通过指令输入模块输入一需要调试的命令,指令输入模块创建一空文件一,并将所述调试的命令存储在文件一中;
步骤3、指令输入模块利用所述读写端口将所述文件一写入到USB存储设备,具体为:利用所述读写端口写入所述文件一时,通过调用write***函数接口将所述文件一写入到USB存储设备;拔出该USB存储设备并***被调试设备的USB接口;
步骤4、被调试设备的USB接口识别到USB存储设备***后,利用USB存储设备与之连接的读写端口,读取USB存储设备中的文件一并保存到被调试设备的android平台***中,具体为:利用USB存储设备与之连接的读写端口,并调用read***函数接口读取USB存储设备中的文件一并保存到被调试设备的android平台***中;通过指令解析模块从该文件一中提取调试命令;
步骤5、通过android平台***的进程间通讯机制socket,将调试命令发送给调试工具ADB;
步骤6、调试工具ADB获取调试命令后,执行该调试命令,形成调试的***日志,创建一个空文件二,并将***日志存储在该空文件二中;
步骤7、数据存储模块将产生的含有***日志的文件二,利用所述读写端口将所述文件二存入到USB存储设备;具体为:利用所述读写端口存入所述文件二时,通过调用write***函数接口将所述文件二存入到USB存储设备;拔出该USB存储设备并***调试设备的USB接口;
步骤8、调试设备利用所述读写端口,获取USB存储设备中的文件二并保存到调试设备中;具体为:利用所述读写端口,并调用read***函数接口获取USB存储设备中的文件二并保存到调试设备中;
步骤9、数据解析模块从该文件二中提取出***日志,进行解析得到调试结果。
在本发明中,所述调试设备还包括数据显示模块,在所述步骤9之后还包括:步骤10、将调试结果通过所述数据显示模块逐条地进行显示,来完成一次调试任务。
其中,USB接口:其负责将调试设备的调试命令拷贝到USB存储设备上,被调试设备的USB接口从USB存储设备上获取到调试命令;并且,被调试设备将***日志通过USB接口拷贝到USB存储设备上,以此将之拷贝给调试设备。
指令输入模块:用于调试人员的调试命令的输入。
指令解析模块:负责通过被调试设备的USB接口从USB存储设备中读取指令和执行从调试设备发送来的调试指令。
socket:操作***中的进程间的通讯机制,是操作***的必备组件;其负责设备内部各个模块之间的数据传递。
调试工具ADB:Android Debug Bridge,是Android平台内部标准的调试技术,负责接收调试命令,执行调试命令,获取调试结果,发送调试结果等操作。
数据存储模块:负责从被调试设备的调试工具ADB获取调试结果,并存储成文件。
数据解析模块:负责通过调试设备中的USB接口从USB存储设备中获取从被调试设备发送来的含有调试结果的文件(即上面提到的数据存储单元存储的文件),进行解析。
数据显示模块:负责在调试设备的屏幕上显示解析出来的、从被调试设备获取的调试结果。
总之,本发明可以在现有的调试技术手段都失效的情况下,也能对android平台的被调试设备进行调试;且操作简单,调试效率快。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。