Android连接多个usb,Android实现USB连接

本文详细介绍了在Android中连接多个USB设备的步骤,包括设置USB权限,确定USB设备接口,连接流程,以及如何在MainActivity中使用USBHelper工具类进行实际操作。重点讲述了USB设备的vendor-id和product-id在识别接口中的作用,以及USB连接过程中的权限检测、接口对象查找、通信通道建立等关键步骤。此外,还提供了USBHelper的使用示例代码。
摘要由CSDN通过智能技术生成

前言

在Android开发过程中,我们有时会涉及到USB连接的问题,这里为了方便USB连接的使用,我将相关知识封装成了一个工具类—USBHelper,下面就来介绍下它的使用吧。

今天涉及的内容有:

USB 权限相关设置

USB 设备接口确定

USB 连接流程讲解

USBHelper在 MainActivity 中的使用

项目结构图

USBHelper 源码

一. USB 权限相关设置

1.1 Android设备上打开 OTG 开关

USB连接涉及到OTG技术,需要我们在带有USB接口的Android设备上打开相关设置。在Android设备上操作如下:

设置 -----> 更多设置 -----> OTG Host //将OTG Host 开关打开

1.2 在 androidmanifast.xml 中添加 usb 权限

在 Androidmanifast.xml 中添加如下权限:

android:name="android.hardware.usb.host"

android:required="true" />

然后在 Androidmanifast.xml 中给要进行USB连接的Activity下添加usb列表文件。假设我们要在MainActivity中进行USB连接,则在 Androidmanifast.xml 中的MainActivity注册下添加以下代码:

android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"

android:resource="@xml/usb" />

主要是在Usb连接相关的Activity注册下添加下面的代码:

android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"

android:resource="@xml/usb" />

这里我们需要在res/下新建xml文件夹,然后在xml文件夹下新建usb.xml文件。即usb.xml路径为:res/xml/usb.xml。usb.xml文件中主要放置的是每个USB接口相关信息(因为一个Android设备可能有多个USB接口),usb.xml文件内容大致如下:

usb.xml里面基本是放的一个Android设备中所有USB接口的信息了。以上代码中,一个即代表一个USB接口了。通常一个USB接口中有很多信息,包括vendor-id,product-id,DeviceID等信息。这里需要注意的是,同一个usb接口热插拔一次,DeviceID是会变化的,标记一个USB接口的唯一性,我们通常用vendor-id和product-id。

二. USB 设备接口确定

上面我们已经讲过了一个Android设备可能有很多USB接口,而区分一个USB接口的唯一性我们是用vendor-id和product-id。

首先,我们需要获取一个Android设备上所有USB接口信息列表,这里我们可以用USBHelper中的以下方法获得:

/**

* 获取设备所有USB接口信息

*

* @param context

* @

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值