iOS BlueTooth HID(Human Interface Device) 键值获取方法

在iOS蓝牙开发当中,现在的主流是使用蓝牙40,使用CoreBluetooth来进行开发,蓝牙40的好处就不多说了,大家自行google,HID也是一种蓝牙协议,单向传输数据,主要是做蓝牙键盘用的,比如罗技的蓝牙键盘k480。

那么我们可以像蓝牙40一样直接获取HID的设备信息,跟发送的数据吗?很可惜,这是不行的,HID是系统层的,我们在应用层是没办法获取到她的任何数据跟信息的 参考这里

答案是:有两种方法

1使用IOKIT库是可以拿到的,但是这个库比较底层,而且使用了这个库的话,发布apple store 会被拒(只是搜索到有人这么说,楼主并没有验证真实性);

2另外一种是在楼主玩弄公司的蓝牙键盘时想到的,键盘上有音乐控制键,可以控制iPhone的音乐播放,让我想到了apple耳机的线控,那么会不会两种控制的方法是一样的呢?话不多说,赶快验证一下;

4使用AVAudioPlayer获取键值

首先我们需要成为第一响应者,而且开始接受远程控制事件

然后初始化播放器

设置事件监听

最后播放器开始播放之后, *** 作耳机线控或者蓝牙键上的音乐控制,就可以获得相应的值,然后做你想执行的 *** 作,但是eventsubtype只有十个键值,这也算是一个小小的限制吧,以上!

我的目标是世界和平!

参考资料点击这里

talk is cheap, show me the code

turboc 开发的是dos实模式下的应用程序

而vc开发环境不能开发dos实模式下的程序,所以不能调用bioskey函数,bioskey是通过调用软中断来读取键盘的。

vc只能开发 控制台应用程序,虽然运起来很像dos程序 而实际上不是的,这种程序不能在真正的dos底下运行。

PHP无法获取用户的键盘输入。PHP运行于服务端,所有的用户行为只有在提交到服务器端后才会被PHP捕获并处理,因此PHP是无法获取用户的键盘输入的。

事实上所有的服务器端脚本语言都不能做到获取用户的键盘输入,通常的解决方案是使用javascript代码,例如

<input type="text" onkeydown="alert(eventkeyCode)" />

其中event代表了键盘/鼠标事件,所有浏览器通用,而keyCode表示此时的按键的键值(如回车键为13),不过需要注意eventkeyCode属性存在浏览器兼容性问题,有的浏览器使用其他的属性表示键值,需要进行兼容处理,或者使用jQuery之类的js框架,这些框架往往已经解决了大部分兼容性问题,可以极大地简化代码。

加个Textbox(文本框), 如果它得到焦点后,和标准键盘一样按USB键盘的键后就会触发keyPress,keyUp,keyDown,这样你就得到了keyAscii

在textbox中是你输入的键, 在Frame1 上显示的是最后输入的键的Ascii值

(下列程序是测试过的)

Private Sub Text1_KeyPress(KeyAscii As Integer)

Frame1Caption = Str(KeyAscii)

End Sub

通过js实现, 关键代码如下:

function getKeyCode(e) {

var keyCode = 0;

var e = e || windowevent;

keyCode = ekeyCode || ewhich || echarCode;

alert(keyCode);

}

以上就是关于iOS BlueTooth HID(Human Interface Device) 键值获取方法全部的内容,包括:iOS BlueTooth HID(Human Interface Device) 键值获取方法、turbo C下的bioskey读取键盘键值函数在VC开发环境下如何用C语言实现、如何用PHP获取用户键盘输入等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9312992.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存