Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/187.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何像HID键盘一样通过蓝牙广播文本?_Java_Android_Kotlin_Bluetooth_Hid - Fatal编程技术网

Java 如何像HID键盘一样通过蓝牙广播文本?

Java 如何像HID键盘一样通过蓝牙广播文本?,java,android,kotlin,bluetooth,hid,Java,Android,Kotlin,Bluetooth,Hid,我的客户需要一个可以输入文本数据并通过蓝牙发送到另一个android设备的应用程序。在接收设备上,文本应输入到当前活动的文本字段中(无论是在设置、浏览器还是任何其他应用程序中)。我的想法是将文本广播为HID,使其行为类似于外部蓝牙键盘。有可能创建这样的应用程序吗 这取决于字符串的长度。蓝牙中没有广播,但有设备广告。每个设备都可以宣传其服务,其他设备也可以收听 但是广告有效负载被限制为37字节。出于您的目的,您需要一个专有服务UUID,它需要16个字节。这就剩下21个字节可供处理。如果您同意,可以

我的客户需要一个可以输入文本数据并通过蓝牙发送到另一个android设备的应用程序。在接收设备上,文本应输入到当前活动的文本字段中(无论是在设置、浏览器还是任何其他应用程序中)。我的想法是将文本广播为HID,使其行为类似于外部蓝牙键盘。有可能创建这样的应用程序吗

这取决于字符串的长度。蓝牙中没有广播,但有设备广告。每个设备都可以宣传其服务,其他设备也可以收听


但是广告有效负载被限制为37字节。出于您的目的,您需要一个专有服务UUID,它需要16个字节。这就剩下21个字节可供处理。如果您同意,可以将要广播的字符串设置为广告有效负载中设备的名称。

这取决于字符串的长度。蓝牙中没有广播,但有设备广告。每个设备都可以宣传其服务,其他设备也可以收听


但是广告有效负载被限制为37字节。出于您的目的,您需要一个专有服务UUID,它需要16个字节。这就剩下21个字节可供处理。如果您对此没有异议,可以将要广播的字符串设置为广告有效负载中的设备名称。

仔细想想。广播不是一个好主意。更好的做法是让发送方成为GATT服务器,它宣传并公开您定义的GATT专有服务。此服务具有存储活动字符串数据的特性。接收方作为GATT客户机工作。它使用您的服务扫描GATT服务器,然后订阅特征,其值随键盘输入而更新。谷歌在这里有大量的文档和示例:在github repos:上有更多的示例。广播不是一个好主意。更好的做法是让发送方成为GATT服务器,它宣传并公开您定义的GATT专有服务。此服务具有存储活动字符串数据的特性。接收方作为GATT客户机工作。它使用您的服务扫描GATT服务器,然后订阅特征,其值随键盘输入而更新。谷歌在这里有大量的文档和示例:在他们的github repos上有更多的示例: