Android 已配对的蓝牙设备未显示应用配置文件

Android paired Bluetooth device not showing app profile

我对 Android 蓝牙功能 不是很熟悉。我有 开发和工作代码 通过我的应用程序通过蓝牙连接两个 Android 设备。现在的问题是。我的应用程序中有一个配置文件,例如用户配置文件。个人资料只有用户的姓名和照片。现在让我们举个例子。我有两台 android 设备,第一台设备安装了我的应用程序,配置文件名称为 John。第二台设备安装了我的应用程序,配置文件名称为 Lara。当我通过我的应用程序连接这两个设备时,如果 john 与 Lara 连接,我想在我的应用程序(约翰的手机)中显示 John 与 Lara 连接。这意味着 John 应用程序会显示 Lara 的个人资料。我有工作代码,通过编码连接两个蓝牙设备。但我仍然无法打开配对设备应用程序配置文件名称。我最近两天都在寻找此功能的解决方案,但我仍然无法在我的应用程序中显示个人资料。 我知道这题不适合stack-overflow。但你的回答对我帮助很大。

提前致谢。

我会使用 this question 的答案,这将使您从一台设备向另一台设备发送至少一个字符串。您正在寻找的答案太累了,但这是一个开始。我不会直接复制我正在链接的答案,因为我认为你应该检查它并在它对你有帮助的情况下对其进行投票,但我会使用它的某些部分以便你可以看看这是否是你想要的正在寻找。

基本上,您在设备之间打开一个套接字。

BluetoothSocket socket = device.createRfcommSocketToServiceRecord(uuids[0].getUuid());
socket.connect();
//Creating objects to hold the output and input from the socket
outputStream = socket.getOutputStream();
inStream = socket.getInputStream();

然后您设置一个函数以从一个设备写入另一个设备。

public void write(String s) throws IOException {
    outputStream.write(s.getBytes());
}

并且,要在其他设备上读取字符串,您可以使用字节缓冲区并将其转换为字符串。这就是您获取字节的方式。

bytes = inStream.read(buffer, bytes, BUFFER_SIZE - bytes);