根据该网站https://developer.android.com/training/game-controllers/multiple-controllers.html,Android 似乎支持多个游戏手柄。实际上,当多个输入设备事件同时发生时它不起作用。例如,当 player1 和 player2 同时按下向上按钮时,dipathKeyEvents 会发生如下所示。
D/dispatchKeyEvent(12736): device:6,action:ACTION_DOWN,keyCoe:KEYCODE_DPAD_UP D/dispatchKeyEvent(12736): device:6,action:ACTION_DOWN,keyCoe:KEYCODE_DPAD_UP D/dispatchKeyEvent(12736): device:6,action:ACTION_DOWN ,keyCoe:KEYCODE_DPAD_UP D/dispatchKeyEvent(12736): device:6,action:ACTION_DOWN,keyCoe:KEYCODE_DPAD_UP D/dispatchKeyEvent(12736): device:1,action:ACTION_DOWN,keyCoe:KEYCODE_DPAD_UP D/dispatchKeyEvent(12736): device:1 ,action: ACTION_UP ,keyCoe:KEYCODE_DPAD_UP D/dispatchKeyEvent(12736): device:1,action:ACTION_DOWN,keyCoe:KEYCODE_DPAD_UP D/dispatchKeyEvent(12736): device:1,action:ACTION_DOWN,keyCoe:KEYCODE_DPAD_UP
并且 device:6 的 ACTION_UP 从未发生过。
他们应该是这样的
D/dispatchKeyEvent(12736): device:6,action:ACTION_DOWN,keyCoe:KEYCODE_DPAD_UP D/dispatchKeyEvent(12736): device:1,action:ACTION_DOWN,keyCoe:KEYCODE_DPAD_UP D/dispatchKeyEvent(12736): device:6,action:ACTION_DOWN ,keyCoe:KEYCODE_DPAD_UP D/dispatchKeyEvent(12736): device:1,action:ACTION_DOWN,keyCoe:KEYCODE_DPAD_UP D/dispatchKeyEvent(12736): device:6,action:ACTION_DOWN,keyCoe:KEYCODE_DPAD_UP D/dispatchKeyEvent(12736): device:1 ,action:ACTION_DOWN,keyCoe:KEYCODE_DPAD_UP
有没有人可以管理多个控制器?NativeActivity 是否解决了这个问题?
我的环境是
- 设备:NVIDIA Shield TV
- controller1:屏蔽控制器
- controller2:Playstation 3 控制器通过 USB 连接
- 操作系统:安卓电视