Можем ли мы отличить Blackberry в режиме USB или режиме зарядки?

#java #blackberry #usb #blackberry-eclipse-plugin

#java #ежевика #usb #blackberry-eclipse-плагин

Вопрос:

Я новичок в blackberry-7. В моем приложении, когда я подключаю свой телефон к кабелю (с помощью USB-кабеля) Я хочу узнать, находится ли мой blackberry, подключенный через USB, в режиме зарядки или передачи. Как это возможно?

Ответ №1:

USB может быть обнаружен асинхронно с использованием SystemListener2 , а также синхронно с использованием DeviceInfo.getBatteryStatus .

Для того, что вам нужно, состояние батареи не будет работать, потому что оно, вероятно, заряжается как в обычном режиме, так и в режиме передачи, и тогда возникает проблема обнаружения кабеля при полной зарядке аккумулятора. Поэтому я бы попробовал зарегистрировать SystemListener2 экземпляр, и, надеюсь, обратному usbConnectionStateChange вызову будет передан флаг SystemListener2.USB_STATE_CABLE_CONNECTED в качестве аргумента. При передаче я бы ожидал, что флаги USB_STATE_ENUMERATED и USB_STATE_MS_INTERFACE_ENUMERATED также будут получены при обратном вызове, но я никогда не тестировал его на реальном устройстве.

И я не знаю, что произойдет, если устройство уже подключено, когда слушатель зарегистрирован.

Чтобы зарегистрировать прослушиватель, вызовите

     Application.getApplication().addSystemListener(mySysListener2);