一种对多种移动设备识别、通信的方法及装置制造方法
【专利摘要】本发明提供一种对多种移动设备识别、通信的方法及装置,通过对接入端移动设备端口进行遍历,动态扫描所有通讯端口的方法,全面的检测了所有的接入设备。本发明的一种对多种移动设备识别、通信的方法及装置,实现了PC端同时对多种移动终端设备的识别及通信。
【专利说明】一种对多种移动设备识别、通信的方法及装置
【技术领域】
[0001]本发明涉及通信领域,特别涉及一种对多种移动设备识别、通信的方法及装置。
【背景技术】
[0002]随着移动通信日新月异,移动设备层出不穷,从原先的功能手机,到现在智能手机,再到各种平板电脑,还有各种制式的数据卡,人们为了方便的管理移动设备设备,包括数据同步、数据备份,PC侧终端管理软件应运而生,然而这些PC侧管理软件都是针对特定的移动设备的,主要存在通用性差、用户体验差、维护成本高等缺陷。因此,市场对一种通用的PC侧软件有比较迫切的需求。
[0003]现有的PC侧管理软件都是针对特定的设备而设计的,与设备的通讯方式、通讯协议等参数都是确定的,因此,只需要检测对应的端口是否就绪,即可展开通讯。然而要想同时支持多种不同类型的移动设备,存在的主要技术困难就是对设备的识别,因为设备不同,对应的通讯方式不同、通讯协议不同、业务模块不同、呈现的软件界面不同等等。因此,实现各种移动设备管理的通用化首要解决的问题就是对移动设备的识别,通过设备识别,确定当前连接设备的型号,才能确定此设备对应的通讯方式、通讯协议、功能模块等关键的参数,从而为此设备选择了与之匹配的相关管理功能。
【发明内容】
[0004]本发明要解决的主要技术问题是,提供一种对多种移动设备识别、通信的方法及装置,避免多种移动设备在PC端无法同时得到识别的问题。
[0005]为解决上述技术问题,本发明采用的技术方案如下:
[0006]一种对多种移动设备识别的方法,包括以下步骤:
[0007]获取至少一个接入移动设备的系统端口信息,并对所述系统端口信息按照类型进行分组;
[0008]根据各分组的类型向其中各端口发送对应的查询指令,依据返回的反馈消息,获取所述端口对应的设备型号。
[0009]进一步地,所述分组包括:DIAG分组、AT分组和ADB分组。
[0010]更进一步地,当所述分组为所述DIAG分组,向该分组内各个端口发送通用的DIAG指令,接收反馈消息,并对反馈消息进行解析,得到所述端口对应的设备型号;当所述分组为所述AT分组,向该分组内各个端口发送通用的AT指令,接收反馈消息,并对反馈消息进行解析,得到所述端口对应的设备型号。
[0011]更进一步地,当所述分组为所述ADB分组,贝U在Terminal中实行ADBdevices命令,返回所述移动设备对应的设备型号。
[0012]更进一步地,在根据各分组的类型向其中各端口发送对应的查询指令同时,设置定时器,接收规定时间返回的反馈消息,并在所述分组中删除已经发送过所述查询指令的端口。[0013]一种对多种移动设备通信的方法,其特征在于,包括上述的对多种移动设备识别的方法,还包括以下步骤:
[0014]将已被识别的所述移动设备型号进行显示;
[0015]选择其中需要进行通信的所述移动设备型号;
[0016]根据所述移动设备型号,匹配对应的配置文件,建立通信通道。
[0017]进一步地,上述一种对多种移动设备通信的方法还包括以下步骤:
[0018]当移除所述移动设备时,获取当前已进行连接的移动设备的设备列表;
[0019]获取当前已被识别的所述移动设备的设备列表;
[0020]判断所述已进行连接的移动设备是否存在于当前已被识别的所述移动设备的设备列表中;
[0021 ] 若不存在,则关闭该通讯通道。
[0022]更进一步地,若所述移除的移动设备为所述ADB分组中的移动设备时,获取当前已进行连接的移动设备的名称列表JASADB devices命令,获取当前已被识别的所述移动设备的设备列表;判断所述已进行连接的移动设备的名称是否存在于当前已被识别的所述移动设备的设备列表中;若不存在,则关闭该通讯通道。
[0023]一种对多种移动设备识别的装置,包括:信息收集单元和信息查询单元;
[0024]所述信息收集单元用于获取至少一个接入移动设备的系统端口信息,并对所述系统端口信息按照类型进行分组;
[0025]所述信息查询单元用于根据各分组的类型向其中各端口发送对应的查询指令,依据返回的反馈消息,获取所述端口对应的设备型号。
[0026]进一步地,所述分组包括:DIAG分组、AT分组和ADB分组。
[0027]更进一步地,当所述分组为所述DIAG分组,所述信息查询单元向该分组内各个端口发送通用的DIAG指令,并将接收到的反馈消息进行解析,得到所述端口对应的设备型号;当所述分组为所述AT分组,所述信息查询单元向该分组内各个端口发送通用的AT指令,并将接收到的反馈消息进行解析,得到所述端口对应的设备型号。
[0028]更进一步地,当所述分组为所述ADB分组,所述信息查询单元实行ADBdevices命令,返回所述移动设备对应的设备型号。
[0029]更进一步地,其特征在于,所述对多种移动设备识别的装置还包括定时单元;所述定时单元用于设定所述查询指令的反馈时间;所述信息查询单元接收规定时间返回的反馈消息,并在所述分组中删除已经发送过所述查询指令的端口。
[0030]一种对多种移动设备通信的装置,包括上述的对多种移动设备识别的装置,还包括:显示单元、选择单元和设备匹配单元;
[0031]所述显示单元用于将已被识别的所述移动设备型号进行显示;
[0032]所述选择单元用于选择其中需要进行通信的所述移动设备型号;
[0033]所述设备匹配单元用于根据所述移动设备型号,匹配对应的配置文件,建立通信通道。
[0034]更进一步地,所述对多种移动设备通信的装置还包括:设备判断单元;
[0035]当移除所述移动设备时,所述信息收集单元获取当前已进行连接的移动设备的设备列表,以及当前已被识别的所述移动设备的设备列表;[0036]所述设备判断单元用于判断所述已进行连接的移动设备是否存在于当前已被识别的所述移动设备的设备列表中;若不存在,则关闭该通讯通道。
[0037]更进一步地,若所述移除的移动设备为所述ADB分组中的移动设备时,所述信息收集单元用于获取当前已进行连接的移动设备的名称列表;并执行ADBdevices命令,获取当前已被识别的所述移动设备的设备列表;
[0038]所述设备判断单元用于判断所述已进行连接的移动设备的名称是否存在于当前已被识别的所述移动设备的设备列表中;若不存在,则关闭该通讯通道。
[0039]本发明的有益效果是:提供一种对多种移动设备识别、通信的方法及装置,通过对接入端移动设备端口进行遍历,动态扫描所有通讯端口的方法,全面的检测了所有的接入设备,实现了 PC端同时对多种移动终端设备的识别及通信。
【专利附图】
【附图说明】
[0040]图1是本发明一实施例中一种对多种移动设备识别的方法流程图;
[0041]图2是本发明一实施例中一种对多种移动设备通信的方法部分流程示意图;
[0042]图3是本发明又一实施例中一种对多种移动设备通信的方法部分流程示意图;
[0043]图4是本发明一实施例中一种对多种移动设备识别的装置结构示意图;
[0044]图5是本发明一实施例中一种对多种移动设备通信的装置结构示意图。
【具体实施方式】
[0045]为使本发明的技术方案和优点更加清楚,下面通过【具体实施方式】结合附图对本发明作进一步详细说明。
[0046]本发明总体的构思为:在不同移动设备上有着多种多样的通讯端口,如:AT端口、DIAG端口、ADB端口等多种方式的端口,而为了使这多种端口都能在其接入端被识别、进而通信;本发明通过对各种设备通讯端口进行遍历查询,对相同的端口进行分组,然后确定各个设备的设备型号,从而进一步确定对应通讯方式、通讯协议等关键参数,建立通信链接。
[0047]下面将结合附图将具体的实现过程予以详细说明:
[0048]请参考图1,在本实施例中,本发明提供一种对多种移动设备识别的方法,其具体的过程为:
[0049]首先,在移动设备接入之前,首先需在PC端注册系统消息,根据本软件所支持的设备 PID (Product identifier 产品身份标识)、VID (Vendor identifier 厂商身份标识)信息向Mac OS注册USB Notification消息,一旦检测到USB设备的接入或拨出消息,系统会发出通知。需要说明的是,本发明中的PC运行环境可以为多种操作系统,为了较为简便的说明发明构思,在本实施例中,选用苹果公司的Mac OS操作系统予以说明。
[0050]步骤1:获取至少一个接入移动设备的系统端口信息,并对所述系统端口信息按照类型进行分组。
[0051]当检测到移动设备接入后,系统会把接入设备加载到设备列表中,在/dev目录中可以得到当前的所有设备,其中,可能会有多个设备接入,就会存在多个DIAG端口、AT端口等。由于需要对多种接入设备的同步处理,因此将这多个端口按照预设的规则进行分组,较优的,可以按照各端口的类型进行分组,保存在不同的端口分组中,如多个DIAG端口分为一组,多个AT端口分为一组。
[0052]在步骤I中,还可以包括以下具体的操作过程:
[0053]步骤101:获取接入移动设备的系统端口信息。
[0054]在系统检测到设备插入消息的同时,驱动会映射出该设备对应的通讯端口,该通讯端口在系统设备文件目录/dev中可以找到,即可以从/dev中获取到当前系统中已加载的端口设备。比如ZTE手机加载后将会映射出的端口有:/dev/cu.ZTEHSUSBDIAGPort_, /dev/cu.ZTCHSUSBATPort_ ;如果同时有多个设备同时加载以后,则每个同类型的端口后面会出现一个随机数字,比如:/dev/cu.ZTEHSUSBDIAGPort_3, /dev/cu.ZTCHSUSBATPort_4。
[0055]步骤102:对系统端口信息进行分组。
[0056]虽然在多个移动设备接入的时候,端口名称中含有随机数,是不确定的。但是端口的前缀名称是确定的,比如/dev/cu.ZTEHSUSBDIAGPort,则可以把这一类的DIAG端口分在一组,因为针对这些端口将可以采用DIAG协议来通讯。同理,将以/dev/cu.ZTEHSUSBATPort为前缀的端口分在一组,通过AT协议来进行通讯。
[0057]在本实施例中,多个分组具体可分为-.AT分组、DIAG分组和ADB分组,其中,ADB分组中存放智能机端口信息。而较优的,可以将这端口分组保存在一个列表中,如PortsArray列表,而其中各个分组端口信息则保存PortsArray列表下的子列表中;如AT分组的端口信息保存在AtPortsArray列表中,DIAG分组端口信息保存在DiagPortsArray列表中,而ADB分组端口信息保存在AdbPortArray列表中。
[0058]在本实施例中,如果接入端设备为智能机,可以通过Google提供的ADB (AndriodDebug Bridge安卓调试桥)工具进行设备检测,为了和功能机的串口统一处理流程,可以建立一个AdbPortArray列表,里面只保存字符串:ADB即可,在后面的解析中会单独处理。即时插入多个智能手机,ADB工具仍然能够检测。
[0059]步骤2:根据各分组的类型向其中各端口发送对应的查询指令,获取所述端口对应的设备型号。
[0060]根据各分组的分组类型,向分组中各个端口分别发送与其对应的获取设备型号的查询指令,如果能够正常返回,即获得了其设备型号,将该端口与其对应的型号记录下来。反之,则进行下一端口的查询,直至所有的端口查询完成。
[0061]请参考图2,在步骤2中,具体包括以下几个步骤:
[0062]步骤201:从端口列表分组中取到其中一组列表,在本实施例中,由于各端口分组信息都保存在PortArray列表中,所以从PortArray分组中取到一个分组,到步骤202。
[0063]步骤202:判断该分组中是否有有效的设备端口。例如在DiagPortsArray中都保存了对应的DIAG端口,查看是否保存了有效的DIAG端口设备,如果没有有效端口,则返回步骤101,如果存在有效端口,则到步骤203。
[0064]步骤203:取其中一个有效端口,到步骤204。
[0065]步骤204:打开此端口,打开端口正常后会返回一个整型的文件描述符。如果文件描述符为-1,则表明此端口打开异常,或者不可用,到步骤207 ;否则到步骤206。
[0066]步骤207:删除该端口,并返回步骤202,从该分组中取下一个端口打开,若该分组中已经没有有效端口,则查询下个端口分组。
[0067]步骤206:向打开的端口发送与其对应的获取设备型号的查询指令。针对打开的端口类型的不同,发送对应的指令;到步骤208。
[0068]其中,向DIAG端口发送通用DIAG指令,向AT端口发送通用的AT指令,同时,为了结果更为准确,较优的,还可以设置定时器,检测结果返回超时时间。
[0069]步骤208:判断反馈结果是否正常返回。若正常返回,转到步骤209 ;若返回异常,则转到步骤207。
[0070]因为有些设备可能会同时映射出DIAG 口和AT 口,但是真正通讯的端口只是其中一个,比如我司的很多WCDMA制式的功能手机都是通过DIAG 口来通讯的,但是会同时映射出AT端口,但是向DIAG 口发送指令才能正常返回,向AT 口发送指令则会返回错误或者超时不返回,对于这类返回异常的端口,则认为是不可用的。
[0071]步骤209,在端口正常返回结果或者超时的情况下,关闭该端口,转到步骤210。
[0072]此时短暂的打开端口的目的只是用来获取设备的型号,如果该设备是本接入端支持的,则会显示在的设备列表中,等用户选择对应的设备后,再行打开对应的端口进行通讯。如果接入端不支持此设备,则此端口是没有必要保持打开状态的。
[0073]步骤210,对正常返回的结果安装指定协议进行解析,转到步骤211。
[0074]对正常返回的结果安装指定协议进行解析,即可得到对应设备的型号名称,将此设备添加至用户可选择设备列表中进行进一步匹配。
[0075]步骤211,记录端口和设备型号名称的对应关系,转到步骤212。
[0076]对于能够正常返回设备型号的端口,则认为是识别并能进行通讯端口,通过解析返回结果而得到对应于该端口的具体设备,此设备即是返回指令解析的结果,此时需要把端口和设备对应信息记录在一个列表中,本实施例中,将其存储在DevicePortArray列表中,直至PortArray中所有端口都访问完成。同时,对于无效的端口,在遍历过程中进行删除,因此,等遍历完成后PortArray中保存的都是可识别的移动设备的有效端口。
[0077]在DevicePortArray列表,每个兀素是一个NSDictionary类型的字典,Key值为设备名称,Value为对应的端口地址。例如对/dev/cu.ZTEHSUSBDIAGPort_3端口发送指令,返回的结果解析为:P727P,则表明P727P设备对应的有效端口地址是/dev/cu.ZTEHSUSBDIAGPort_3,因此把 Key:P727P,Value:/dev/cu.ZTEHSUSBDIAGPort_3 保存在一个字典中添加到DevicePortArray中。
[0078]对于通过ADB方式获取到的智能设备,通讯方式采用的是Socket套接口方式,因此对应的字典应该是:Key:P727P, Value: 127.0.0.1:14913 ;127.0.0.1 表示 Socket 连接的服务器地址,14913是Socket连接的服务器端口,此端口是预先和服务器端约定好进行通讯的端口。
[0079]步骤212:判断是否所有端口都已访问完成,若都访问完成,则结束,否则进入步骤 207。
[0080]在步骤203中,若是在ADB分组中获取到的端口,则进入步骤213。
[0081]步骤213 =ADB分组中的端口,进入步骤214.[0082]步骤214:采用ADB方式进行检测,进入步骤215。
[0083]对于AdbPortArray中的端口,其可以单独采用ADB方式进行检测,所以不需要打开端口。可以直接在Terminal中实行:ADB devices命令。
[0084]执行ADB devices命令的具体过程为:调用Terminal,执行ADB devices命令,若正常返回,则反馈消息中含有设备名称和设备状态;若没有相应设备,则不返回任何设备列表。
[0085]步骤215:判断反馈消息是否正常返回,若正常,进入步骤210,否则转到步骤201。
[0086]若反馈消息正常返回,即可返回接入的智能手机设备名称,否则无返回结果。
[0087]请参考图2在本实施例中,还提供一种对多种移动设备通信的方法,其主要是用于在上述识别方法之后与接入端进行通讯链接,理所当然,其应该包括本实施例中所记载的对多种移动设备识别的方法,除此之外,在识别完移动设备之后,还需要与其建立通信通道,具体的过程如图2所示,包括:
[0088]步骤3:将已被识别的所述移动设备型号进行显示;
[0089]根据DevicePortArray中每个元素的Key即可得到当前接入的设备列表,并展示在设备连接界面中,供用户进行选择。
[0090]步骤4:选择其中需要进行通信的所述移动设备型号;
[0091]在该过程中,用户可以通过移动设备选择界面选择需要进行连接的移动设备,该选择过程可以在对PortArray中所有端口都访问完成之后,也可以在对PortArray中某一端口访问完成之后,因为在对其中任一端口访问之后,若确认为可识别的设备端口,则系统将会将该端口所对应的设备名称添加至用户可选择的设备列表中,供用户选择。
[0092]步骤5:根据所述移动设备型号,匹配对应的配置文件,建立通信通道。
[0093]根据用户选择的设备名称,从DevicePortArray获取到对应设备的有效通讯端口,如果是类似/dev/cu.ZTEHSUSBDIAGPort_3形式的端口,则采用串口通讯的方式,建立通信通道,如果是127.0.0.1:14913形式的端口,则采用Socket通讯的方式,建立通信通道。同时需要从注册的配置文件中,例如本实施例中,将从/System/Library/MobileList/Device, plist配置文件中获取到对应设备的通讯协议、支持的功能模块等信息,开始按照PC侧软件的初始化流程及设备对应的协议进行初始化,从而完成了从设备识别到和具体一个设备进行通讯的全部过程。
[0094]在本实施例中,一种对多种移动设备通信的方法还包括以下的操作步骤:
[0095]步骤6:当移除所述移动设备时,获取当前已进行连接的移动设备的设备列表;同时获取当前已被识别的移动设备的设备列表;
[0096]步骤7:判断所述已进行连接的移动设备是否存在于当前已被识别的移动设备的设备列表中;若不存在,则关闭该通讯通道。
[0097]请参考,在步骤6中,具体还包括以下几个处理过程:
[0098]步骤601:收到系统上报设备移除消息。在之前向系统注册的USB通告消息,不仅在设备插入的时候进行通告,在设备移除等其他异常状态下均会发送通知。
[0099]重新检测当前已被识别端口列表,若检索分组为ADB分组,则进入步骤604 ;否则进入步骤602。
[0100]步骤602:获取当前已被识别端口列表,当前已被识别端口列表可以从/dev路径下获取到。进入步骤603。
[0101]步骤604:而对于ADB分组中的端口,由于采用的是Socket套接口通讯,所以必须要通过设备名称进行匹配,可以通过ADB命令方式获取。进入步骤604。
[0102]步骤603:获取已连接端口列表。从DevicePortArray中获取当前已连接的移动设备采用的端口。进入步骤701。
[0103]步骤604:而对于已连接的智能机,应取到当前连接设备名称,然后执行ADBdevices命令,返回设备名称。进入步骤702。
[0104]其中,步骤602和603、604和605的先后顺序可以交换,并不影响本发明的实现。
[0105]在步骤I中,主要包括以下几个步骤:
[0106]步骤701:判断当前已连接端口是否存在于已被识别端口列表中,若存在不进行任何操作,否则,进入步骤703。
[0107]如果当前已连接端口依然存在于已被识别端口中,则认为移除的设备是没有连接的设备,不做其他处理。反之,则认为当前该端口对应的移动连接设备被移除。
[0108]步骤702:判断当前已连接设备是否存在于已被识别设备列表中,若存在则进入步骤703,否则不进行任何操作。
[0109]对于智能手,应取到当前连接设备名称,然后执行ADB devices命令,返回的已被识别设备列表中如果包括当前连接的设备名称,则认为拨出的设备是没有连接的设备,不做其他处理,反之,则认为当前连接设备被移除。
[0110]步骤703:向系统发送对应移动设备移除的通告消息,同时从设备列表中移除该设备信息。
[0111]步骤704:关闭通信通道,释放占用的资源。
[0112]系统收到设备移除消息后,则关闭当前通信通道。设备移除后,需要释放先前设备占用的资源,清理端口,并关闭通信通道。进一步地,对应的等待返回指令的定时器需要清除。智能机设备需要关闭Socket通讯端口,并清理相应的占用资源。
[0113]在本实施例中,某个设备移除后,在当前的设备列表中清除已移除的设备,显示为断开状态。其他的设备端口并不受此影响,端口号的地址不会发生变化,因此,用户可以选择其他的设备进行连接,仍然能够匹配到对应的通讯端口,从而完成设备连接的切换。
[0114]在本发明中,还一种对多种移动设备识别的装置,其主要包括:信息收集单元和信息查询单元;
[0115]信息收集单元用于获取接入移动设备的系统端口信息,并对系统端口信息进行分组;
[0116]当检测到移动设备接入后,信息收集单元会把接入设备加载到设备列表中,在/dev目录中可以得到当前的所有设备,其中,可能会有多个设备接入,就会存在多个DIAG端口、AT端口等。由于需要对多种接入设备的同步处理,因此信息收集单元会将这多个端口按照预设的规则进行分组,较优的,可以按照各端口的类型进行分组,保存在不同的端口分组中,如多个DIAG端口分为一组,多个AT端口分为一组。
[0117]信息查询单元用于根据各分组的类型向其中各端口发送对应的查询指令,获取设备端口对应的设备型号。
[0118]根据各分组的分组类型,信息查询单元会向分组中各个端口分别发送与其对应的获取设备型号的查询指令,如果能够正常返回,即获得了其设备型号,将该端口与其对应的型号记录下来。反之,则进行下一端口的查询,直至所有的端口查询完成。
[0119]其中,信息查询单元在根据各分组的类型向其中各端口发送对应的查询指令之后,将得到的反馈信息进行解析,得到所述端口对应的设备型号。[0120]对正常返回的结果,信息查询单元会安装指定的相应协议进行解析,即可得到对应设备的型号名称,将此设备添加至用户可选择设备列表中进行进一步匹配。对于能够正常返回设备型号的端口,则认为是识别并能进行通讯端口,通过解析返回结果而得到对应于该端口的具体设备,此设备即是返回指令解析的结果,
[0121]在本实施例中,若所述移动设备为智能机,所述装置则按照ADB处理机制进行处理。
[0122]在本实施例中,为了结果更为准确,较优的,本实施例中的装置还可以包括定时单元;其主要是用于设定查询指令的反馈时间;信息查询单元接收规定时间返回的反馈消息,并在端口分组中删除已经发送过查询指令的端口。
[0123]因为有些设备可能会同时映射出DIAG端口和AT端口,但是真正通讯的端口只是其中一个,比如我司的很多WCDMA制式的功能手机都是通过DIAG 口来通讯的,但是会同时映射出AT端口,但是向DIAG 口发送指令才能正常返回,向AT端口发送指令则会返回错误或者超时不返回,对于这类返回异常的端口,则认为是不可用的,可以直接丢弃。
[0124]在本实施例中,信息收集单元、信息查询单元和定时单元的具体功能可参照上述的一种对多种移动设备识别的方法。
[0125]本发明还提供一种对多种移动设备通信的装置,其不仅包括上述的对多种移动设备识别的装置,还包括:显示单元、选择单元和设备匹配单元;
[0126]显示单元用于将已被识别的移动设备型号进行显示;
[0127]选择单元用于选择其中需要进行通信的移动设备型号;
[0128]设备匹配单元用于根据移动设备型号,匹配对应的配置文件,建立通信通道。
[0129]进一步地,对多种移动设备通信的装置还包括:设备判断单元;当移除移动设备时,信息收集单元获取当前已进行连接的移动设备的设备列表,以及当前已被识别的移动设备的设备列表;该设备判断单元用于判断已进行连接的移动设备是否存在于当前已被识别的移动设备的设备列表中;若不存在,则关闭该通讯通道。
[0130]若移除的移动设备为智能机时,信息收集单元用于获取当前已进行连接的移动设备的名称列表;并执行ADB命令,获取当前已被识别的移动设备的设备列表;设备判断单元用于判断已进行连接的移动设备的名称是否存在于当前已被识别的移动设备的设备列表中;若不存在,则关闭该通讯通道。
[0131]本实施例中,一种对多种移动设备通信的装置中个模块功能的实现方式可参照上述一种对多种移动设备通信的方法。
[0132]以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属【技术领域】的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
【权利要求】
1.一种对多种移动设备识别的方法,其特征在于,包括以下步骤: 获取至少一个接入移动设备的系统端口信息,并对所述系统端口信息按照类型进行分组; 根据各分组的类型向其中各端口发送对应的查询指令,依据返回的反馈消息,获取所述端口对应的设备型号。
2.如权利要求1所述的对多种移动设备识别的方法,其特征在于,所述分组包括:DIAG分组、AT分组和ADB分组。
3.如权利要求2所述的对多种移动设备识别的方法,其特征在于,当所述分组为所述DIAG分组,向该分组内各个端口发送通用的DIAG指令,接收反馈消息,并对反馈消息进行解析,得到所述端口对应的设备型号;当所述分组为所述AT分组,向该分组内各个端口发送通用的AT指令,接收反馈消息,并对反馈消息进行解析,得到所述端口对应的设备型号。
4.如权利要求2所述的对多种移动设备识别的方法,其特征在于,当所述分组为所述ADB分组,贝U在Terminal中实行ADB devices命令,返回所述移动设备对应的设备型号。
5.如权利要求1-4中任一项所述的对多种移动设备识别的方法,其特征在于,在根据各分组的类型向其中各端口发送对应的查询指令同时,设置定时器,接收规定时间返回的反馈消息,并在所述分组中删除已经发送过所述查询指令的端口。
6.一种对多种移动设备通信的方法,其特征在于,包括权利要求1-5中任一项所述的对多种移动设备识别的方法,还包括以下步骤: 将已被识别的所述移动设备型号进行显示; 选择其中需要进行通信的所述移动设备型号; 根据所述移动设备型号,匹配对应的配置文件,建立通信通道。
7.如权利要求6所述的对多种移动设备通信的方法,其特征在于,还包括以下步骤: 当移除所述移动设备时,获取当前已进行连接的移动设备的设备列表; 获取当前已被识别的所述移动设备的设备列表; 判断所述已进行连接的移动设备是否存在于当前已被识别的所述移动设备的设备列表中; 若不存在,则关闭该通讯通道。
8.如权利要求7所述的对多种移动设备通信的方法,其特征在于, 若所述移除的移动设备为所述ADB分组中的移动设备时,获取当前已进行连接的移动设备的名称列表; 执行ADB devices命令,获取当前已被识别的所述移动设备的设备列表; 判断所述已进行连接的移动设备的名称是否存在于当前已被识别的所述移动设备的设备列表中; 若不存在,则关闭该通讯通道。
9.一种对多种移动设备识别的装置,其特征在于,包括:信息收集单元和信息查询单元; 所述信息收集单元用于获取至少一个接入移动设备的系统端口信息,并对所述系统端口信息按照类型进行分组; 所述信息查询单元用于根据各分组的类型向其中各端口发送对应的查询指令,依据返回的反馈消息,获取所述端口对应的设备型号。
10.如权利要求9所述的对多种移动设备识别的方法,其特征在于,所述分组包括: DIAG分组、AT分组和ADB分组。
11.如权利要求10所述的对多种移动设备识别的装置,其特征在于,当所述分组为所述DIAG分组,所述信息查询单元向该分组内各个端口发送通用的DIAG指令,并将接收到的反馈消息进行解析,得到所述端口对应的设备型号;当所述分组为所述AT分组,所述信息查询单元向该分组内各个端口发送通用的AT指令,并将接收到的反馈消息进行解析,得到所述端口对应的设备型号。
12.如权利要求10所述的对多种移动设备识别的装置,其特征在于,当所述分组为所述ADB分组,所述信息查询单元实行ADB devices命令,返回所述移动设备对应的设备型号。
13.如权利要求9-12中任一项所述的对多种移动设备识别的装置,其特征在于,所述对多种移动设备识别的装置还包括定时单元; 所述定时单元用于设定所述查询指令的反馈时间; 所述信息查询单元接收规定时间返回的反馈消息,并在所述分组中删除已经发送过所述查询指令的端口。
14.一种对多种移动设备通信的装置,其特征在于,包括权利要求9-13中任一项所述的对多种移动设备识别的装置,还包括:显示单元、选择单元和设备匹配单元; 所述显示单元用于将已被识别的所述移动设备型号进行显示; 所述选择单元用于选择其中需要进行通信的所述移动设备型号; 所述设备匹配单元用于根据所述移动设备型号,匹配对应的配置文件,建立通信通道。
15.如权利要求14所述的对多种移动设备通信的装置,其特征在于,所述对多种移动设备通信的装置还包括:设备判断单元; 当移除所述移动设备时,所述信息收集单元获取当前已进行连接的移动设备的设备列表,以及当前已被识别的所述移动设备的设备列表; 所述设备判断单元用于判断所述已进行连接的移动设备是否存在于当前已被识别的所述移动设备的设备列表中;若不存在,则关闭该通讯通道。
16.如权利要15所述的对多种移动设备通信的装置,其特征在于, 若所述移除的移动设备为所述ADB分组中的移动设备时,所述信息收集单元用于获取当前已进行连接的移动设备的名称列表;并执行ADB devices命令,获取当前已被识别的所述移动设备的设备列表; 所述设备判断单元用于判断所述已进行连接的移动设备的名称是否存在于当前已被识别的所述移动设备的设备列表中;若不存在,则关闭该通讯通道。
【文档编号】H04W76/00GK103517375SQ201210214957
【公开日】2014年1月15日 申请日期:2012年6月27日 优先权日:2012年6月27日
【发明者】马生峰 申请人:中兴通讯股份有限公司