我正在 Android 上构建蓝牙 HID 键盘应用程序,但我陷入了在键盘报告中发送重音字符(
à
、è
、é
、...)和 Unicode 的最佳方式的困境。
我已经有了工作报告地图/描述符。在使用页面中没有
à
的使用ID,但是这个arduino项目似乎能够以一种我不明白为什么它有效的方式发送它。 ASCII 映射将 a
映射到 0x14,但在 HID 规范中它应该是 0x04。
那么,
有人可以解释一下为什么在链接的项目中为 'a' 发送 0x14 而不是 0x04 有效吗?
有没有比模拟操作系统特定的ALT代码快捷键来获取unicode字符更好的方法?
正如@aja 所说,键盘布局是一场噩梦。
为了发送重音字符,您必须发送键盘快捷键。一个键您知道其代码+一个修饰符。所以这取决于每个键盘布局。
对于 Unicode 字符(另一个噩梦),我所做的取决于操作系统,例如对于 Windows,我模仿了 Alt Codes。