安卓蓝牙 PBAP
Posted
技术标签:
【中文标题】安卓蓝牙 PBAP【英文标题】:Android Bluetooth PBAP 【发布时间】:2010-09-02 17:08:04 【问题描述】:我将尝试简要介绍一下我正在做的事情,以及 然后提出我的问题...任何帮助将不胜感激!
我一直在尝试按顺序将 android 设备连接到其他手机 使用电话簿通过蓝牙导入他们的电话簿信息 访问配置文件。为了实现这一点,我试图将我的设备作为 PCE, 而另一部手机将充当 PSE。
我知道 PSE 角色已经在 Android 上实现了,所以我 查看它的代码并试图以某种方式对其进行逆向工程 实现另一边。
所以..我的问题是:创建服务器套接字时,它没有 指定任何 UUID,它只是开始侦听端口 19,如下所示:
mServerSocket = mAdapter.listenUsingRfcommOn(PORT_NUM);
不是应该在某处注册 PBAP 服务吗?如何 其他设备发现服务,更重要的是,哪个 UUID 尝试连接我的 PCE 设备时应该使用:
mSocket = mDevice.createRfcommSocketToServiceRecord(UUID_PBAP);
谢谢,佩德罗。
【问题讨论】:
您是否能够制作 PBAP 客户端?如果是,您能否指导我在建立 PBAP 连接后如何获取电话簿详细信息?这是我目前能做的***.com/questions/23948610/… 【参考方案1】:你应该使用 uuid 创建一个客户端套接字,sdp 会为你找到对应的通道。
你不必关心频道号,你分配的频道并不总是正确的。
【讨论】:
问题是关于如何注册服务器端 (PBAP PSE) 以及客户端如何在没有看似正确的服务器端注册的情况下使用 SDP 进行发现。这个答案只是说使用 SDP,但没有解释它为什么以及如何工作。这个问题也可以更清楚地解释 SDP 查询的结果——它有效吗?或不?如果它起作用了,那么可能 UUID-RFCOMM 通道正在某个地方注册。【参考方案2】:请使用此方法:listenUsingRfcommWithServiceRecord of BluetoothAdapter with right UUID。
【讨论】:
以上是关于安卓蓝牙 PBAP的主要内容,如果未能解决你的问题,请参考以下文章
[RK3568][Android11]蓝牙通讯协议PhoneBookAccessProfile(PBAP)同步通讯录
[RK3568][Android11]蓝牙通讯协议PhoneBookAccessProfile(PBAP)同步通讯录
除了 6 个配置文件(HFP、PBAP、A2DP、AVRCP、PAN、HID)之外,iOS 中是不是有任何受支持的蓝牙配置文件?