开发者社区> 问答> 正文

关于android usb host通信的问题:报错

我要使用一个android平板与我们自己的机器通过usb进行通信,我采用的是usb host的方式。系统版本是android4.3,运行在vmware中。我自己的机器使用的是USB hid通信协议。现在我已经能获取到UsbDeviceConnection,但是现在碰到了几个问题。

  1. 我通过UsbInterface.getEndpointCount()获得返回值是1,通过UsbEndpoint.getdirection()获得返回值是128,也就是说usb设备只有一个端点,且类型为USB_ENDPOINT_XFER_INT,方向为USB_DIR_IN类型的。我可以利用这个端点既接收数据又发送数据吗?
  2. 我想这个端点是不是就是zero端点呢,是不是可以通过controlTransfer(int requestType, int request, int value, byte[] buffer, int length, int timeout)来读取设备发送来的消息?但是第二个参数(int request)该怎么设置呢?

期待大家的回复

下图是所获取usb设备的信息:

 

展开
收起
kun坤 2020-06-14 11:10:27 520 0
1 条回答
写回答
取消 提交回答
  • 坐等高人回答######

    一般来说,应该有两个接口,一个in,一个out,分别负责读写。你这个既然是out,是没法读取的。很久之前弄过这个东西,你上stackoverflow找找,代码例子有不少。

    ######哦,谢谢你的回答,我再去看看。######

    lz,你好,我最近也是在弄这方面的东西,也是在UsbInterface这里遇到一些问题,interface,connection,manager,这些都可以正确获取到,但是就是在调用UsbInterface.getEndpoint()这个方法的时候程序就终止了,请问你知道这是什么原因吗

    ######

    引用来自“zhaoshiqiang”的评论

    lz,你好,我最近也是在弄这方面的东西,也是在UsbInterface这里遇到一些问题,interface,connection,manager,这些都可以正确获取到,但是就是在调用UsbInterface.getEndpoint()这个方法的时候程序就终止了,请问你知道这是什么原因吗

    终止了?报什么错误?

    2020-06-14 11:10:33
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
58同城Android客户端Walle框架演进与实践之路 立即下载
Android组件化实现 立即下载
蚂蚁聚宝Android秒级编译——Freeline 立即下载