Как сделать так, чтобы сканер отпечатков пальцев не выбирался геймпадом?

Моя игра использует InputManager для перебора всех идентификаторов устройств, выбирая те, у которых установлены флаги джойстика и геймпада. Проблема в том, что некоторые устройства (например, LG V35 ThinQ) регистрируют свои сканеры отпечатков пальцев как Клавиатура | Джойстик | Геймпад, что мешает моим пользователям. Есть ли более надежный способ обнаружения реальных устройств с геймпадом / джойстиком, или это ошибка, которую LG должна решить?

Вот изображение некоторых выходных данных журнала выбранного устройства. Вывод журнала устройства сканера отпечатков пальцев


person cjserio    schedule 23.09.2018    source источник


Ответы (1)


Может быть, тоже проверить флаг «Местоположение»? Если для местоположения установлено значение «встроенное», с вероятностью 99% это не то устройство, которое вы хотите использовать.

person lkogs    schedule 23.09.2018
comment
Распечатываемое местоположение — это mIsExternal в классе InputDevice, который имеет метод доступа isExternal(), но не является общедоступным. - person cjserio; 24.09.2018