当前位置 : 主页 > 手机开发 > android >

如何检测Android是否具有完整的USB支持?

来源:互联网 收集:自由互联 发布时间:2021-06-11
我的应用程序使用UsbManager与USB摄像头通信.某些设备没有USB支持.这些将为(UsbManager)context.getSystemService(Context.USB_SERVICE)返回null,或者在枚举设备时会抛出NoSuchMethodError异常.我可以检测到这
我的应用程序使用UsbManager与USB摄像头通信.某些设备没有USB支持.这些将为(UsbManager)context.getSystemService(Context.USB_SERVICE)返回null,或者在枚举设备时会抛出NoSuchMethodError异常.我可以检测到这两个并正确显示消息.不幸的是,一些没有检测到USB设备的机器人也没有引起这些问题.他们只返回一个空的USB设备列表.如何才能正确检测到该系统不支持USB OTG? 确定设备是否具有USB主机功能的官方方法是使用相关的系统功能.

理想情况下,添加< uses-feature>元素到您的清单,表明您对android.hardware.usb.host功能感兴趣.如果您不完全需要该功能,请添加android:required =“false”作为属性.

如果您使用android:required =“false”,并且您想在运行时确定设备是否是USB主机,请使用PackageManager,hasSystemFeature()FEATURE_USB_HOST.FEATURE_USB_HOST定义为与在<中使用的字符串相同的字符串.使用特征> (android.hardware.usb.host).

网友评论