API аппаратных прерываний для Linux

Когда я собираюсь подключить устройство через USB-порт, я хочу немедленно его обнаружить. Я ищу Java API, моя основная цель - ОС Linux.

Кто-нибудь знает такой API?


person Sachin J    schedule 19.11.2012    source источник
comment
Я подозреваю, что вам нужно будет опросить команду, в которой перечислены USB-устройства.   -  person Peter Lawrey    schedule 19.11.2012
comment
@PeterLawrey Не могли бы вы уточнить это. Любая справочная ссылка?   -  person Sachin J    schedule 19.11.2012


Ответы (2)


Вы можете сделать что-то вроде этого:

try {
    String command = "lsusb"; // you may add some param if you want
                              // or use adb for instance
    Process child = Runtime.getRuntime().exec(command);

    // Get output stream to write from it
    OutputStream out = child.getOutputStream();

    // TODO parsing lsusb output

    out.close();
} catch (IOException e) {
}
person CAMOBAP    schedule 19.11.2012
comment
Спасибо за ответ. Обнаруживает прикрепленную мышь. Позвольте мне прояснить мой сценарий: когда я подключаю устройство Android OS к своей машине, я хочу запустить событие, которое покажет, что устройство найдено. - person Sachin J; 19.11.2012
comment
Попробуйте заменить lsusb на adb devices | awk 'NR>1 {print $1}'. Обратите внимание, что вам необходимо установить adb - person CAMOBAP; 19.11.2012

также рассмотрит возможность мониторинга событий USB через интерфейс DBus

есть библиотека DBus-Java здесь и аналогичная ветка, но на питоне здесь

person Raber    schedule 19.11.2012