Можно ли написать драйвер для системы ввода в Android - PullRequest
2 голосов
/ 13 июня 2011

Возможно ли для общедоступного приложения только для SDK записать «драйвер» для устройства ввода, например, джойстик, который использует какой-то расплывчатый, возможно, чужой, протокол по USB с использованием нового USB-интерфейса 3.1?

ДляНапример, можно ли было бы реализовать драйвер для совершенно нового контроллера O-Triangle 3.15 с 13 джойстиками и 159 кнопками, виртуальным устройством отслеживания головы и автоматом для подачи соды, или это должно было бы ждать андроида?будет обновлен новым драйвером низкого уровня для контроллера O-Triangle 3.15

Ответы [ 2 ]

0 голосов
/ 18 ноября 2011

Мы успешно записали на USB-устройства без драйверов ядра, используя этот код: http://android.serverbox.ch/?p=370

Мы можем записывать общие пакетные пакеты на конечные точки USB.Я полагаю, что вы можете сделать то же самое для других типов USB-устройств (HID и т. Д.).Обратите внимание, что в Samsung Galaxy Tab 10.1, похоже, отсутствуют компоненты, необходимые для правильного обнаружения USB-устройств (начиная с обновления 3.1 touchwiz).Однако у нас это работает на Acer A500.

Я не знаю, как сделать это для всей системы, но я думаю, что это может быть.Я бы посоветовал посмотреть, как это делают приложения Wiimote.Я знаю, что вы можете загрузить приложения, которые позволят вам соединить Wiimote с телефоном, а затем использовать его как контроллер общего назначения для игр и т. Д.

Кроме того, мне бы очень хотелось, чтобы контроллер имел 13 джойстиков и автомат для газировки!;)

0 голосов
/ 13 июня 2011

Похоже, вы можете сделать это с классами в пакете android.hardware.usb : вы можете реализовать Сервис, который обнаруживает вставку / удаление устройства и генерирует соответствующие InputEvent s , Не уверен, что какое-либо приложение, которое хочет использовать это устройство, должно будет включить Сервис в свой apk, или если вы можете сделать отдельный пакет, который передает необходимые события в подсистему ввода ОС, хотя.

...