假设两部安卓手机通过蓝牙配对并建立连接。如何在客户端以编程方式确定远程设备(服务器)是否支持 PBAP 等蓝牙规范?
如果它确实支持它,那么如何以编程方式启动与远程设备的 PBAP session ?
我在网上进行了广泛的搜索,但到目前为止还找不到 API 支持和相同的文档。
编辑
获取远程设备的 UUID 在这里有用吗?如果是,我如何知道它是否支持 PBAP?
更新
我设法连接到远程设备使用:
mBluetoothSocket = mBluetoothDevice.createRfcommSocketToServiceRecord(applicationUUID);
btAdapter.cancelDiscovery();
mBluetoothSocket.connect();
在哪里
private UUID applicationUUID = UUID.fromString("0000111E-0000-1000-8000-00805F9B34FB");
免提配置文件模式。不过,是否有任何此类固定 UUID 可用于通过 PBAP 模式进行连接?
更新2
现在我可以使用 UUID 0000112F 与远程设备配对,这是用于 PSE 访问的 UUID。建立连接后,我在远程设备上收到一条消息,询问我是否可以允许远程设备访问通话记录和联系人。我点击是。
最佳答案
我设法连接到远程设备使用:
mBluetoothSocket = mBluetoothDevice.createRfcommSocketToServiceRecord(applicationUUID);
btAdapter.cancelDiscovery();
mBluetoothSocket.connect();
在哪里
private UUID applicationUUID = UUID.fromString("0000112F-0000-1000-8000-00805F9B34FB");
我能够使用 UUID 0000112F 与远程设备配对,这是用于 PSE 访问的 UUID。建立连接后,我在远程设备上收到一条消息,询问我是否可以允许客户端访问通话记录和联系人。我点击是。已建立 PBAP 连接。
张贴此内容以供将来遇到此问题的任何人引用:)。
关于java - 如何通过蓝牙查询远程手机是否支持PBAP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23948610/