很长一段时间以来,我一直对使用 Wiimote 作为 Android 控制器感兴趣。
我知道这在很多年前是可能的,在创建 l2cap 套接字的方法从 Android api 中删除之前。
在 api 29 (Android 10) 中添加了用于创建 l2cap 套接字的方法,因此理论上现在应该可以使用 Wiimote 作为控制器。
我创建并尝试像这样连接到套接字:
BluetoothSocket socket = mWiimote.createInsecureL2capChannel(0x13);
socket.connect();
0x13
Wiimote 数据管道的 PSM 在
哪里,如此处所述: https ://wiibrew.org/wiki/Wiimote#HID_Interface
我也尝试连接到控制管道无济于事。
我只是得到:
java.io.IOException: read failed, socket might closed or timeout, read ret -1
其他人在尝试连接 Wii 平衡板时遇到同样的问题: Android 10 L2CAP connection IOException timeout Wii Balance Board
他们已设法与平衡板配对,但我没有成功,据我了解,这需要特权蓝牙权限,因为您必须根据按下的按钮设置密钥(主机或控制器的 MAC 地址,向后) Wiimote 可发现。我不确定这个人是否正在使用特权权限(并且他们的应用程序在/priv-app/
文件夹中),或者他们有解决方法。