Wednesday 15 May 2013

android - HTC ONE M7 is considered as GamePad -



android - HTC ONE M7 is considered as GamePad -

i developer app android can observe type of device (smartphone normal or gamepad). i've done test in htc 1 m7 without connection gamepad. code tell me it's gamepad.

this code:

inputdevice dev = inputdevice.getdevice(deviceid); int sources = dev.getsources(); // verify device has gamepad buttons, command sticks, or both. if (((sources & inputdevice.source_gamepad) == inputdevice.source_gamepad) || ((sources & inputdevice.source_joystick) == inputdevice.source_joystick)) { log.d(tag, "device detected : game pad"); }

and htc 1 m7's deviceid = 2, found ((sources & inputdevice.source_gamepad) == inputdevice.source_gamepad) true. that's why htc considered gamepad.

anyone knows why ?

i found solution.

we should check existence of gamepad this: (&& instead of ||)

inputdevice dev = inputdevice.getdevice(deviceid); int sources = dev.getsources(); // verify device has gamepad buttons, command sticks, or both. if (((sources & inputdevice.source_gamepad) == inputdevice.source_gamepad) && ((sources & inputdevice.source_joystick) == inputdevice.source_joystick)) { log.d(tag, "device detected : game pad"); }

because gamepad, contains inputdevice.source_gamepad , inputdevice.source_joystick in same time.

you can this: how determine source of input device in android?

thanks.

android htc gamepad

No comments:

Post a Comment