android:usbManager.getDeviceList()在引导后返回空列表

android:usbManager.getDeviceList()在引导后返回空列表,android,android-usb,Android,Android Usb,我正在开发一个应用程序,它通过usb主机模式使用usb设备。 我使用IntentFilter进行操作\u USB\u设备\u连接,因此在设备连接后,我可以与设备进行连接和通信。 当我打开(或重新启动)已插入usb设备的手机时,问题就会出现。开机后打开应用程序时,我看不到设备 下面的代码生成一个空的deviceList usbManager = (UsbManager) context.getSystemService(Context.USB_SERVICE); HashMap<String

我正在开发一个应用程序,它通过usb主机模式使用usb设备。 我使用IntentFilter进行操作\u USB\u设备\u连接,因此在设备连接后,我可以与设备进行连接和通信。 当我打开(或重新启动)已插入usb设备的手机时,问题就会出现。开机后打开应用程序时,我看不到设备

下面的代码生成一个空的deviceList

usbManager = (UsbManager) context.getSystemService(Context.USB_SERVICE);
HashMap<String, UsbDevice> deviceList = usbManager.getDeviceList();
usbManager=(usbManager)context.getSystemService(context.USB_服务);
HashMap deviceList=usbManager.getDeviceList();
Android开发者参考资料中提到了getDeviceList():

如果未连接任何设备,或者USB主机模式处于非活动状态或不受支持,则结果将为空

显然,手机支持USB主机模式,并且还连接了设备。所以我想主机模式默认是非活动的


如果我断开并重新连接usb设备,它会工作得很好,但是因为设备和手机是在一个定制的支架中,重新连接它们有点复杂。是否有办法从代码激活主机模式

我有一个类似但相反的问题,我的动作\u USB\u设备\u连接的广播在重新启动后自动发送: