蓝牙服务发现协议 (SDP) 守护进程在哪里?
我正在尝试使用 bluez 在 Debian V8.0 上注册蓝牙服务。我在https://people.csail.mit.edu/albert/bluez-intro/使用示例代码。一切顺利,直到我尝试
sdp_connect( BDADDR_ANY, BDADDR_LOCAL, 0 );
Run Code Online (Sandbox Code Playgroud)
这失败了。经过一番挖掘,我发现 sdp 守护进程 (sdpd)(它需要连接到它)没有运行,实际上我的系统上甚至不存在。
我试过的:
我的目标:
我正在尝试在我的 Debian 系统上注册我的服务,以便我可以从另一个蓝牙设备(特别是我的 Android)连接到它。该服务运行良好,只是没有 SDP 注册就无法找到它。
我很乐意使用它的(已知)频道号直接连接到它,但 Android 只能通过注册服务 UUID(即使用BluetoothDevice.createRfcommSocketToServiceRecord(uuid))进行连接,但我看不到连接到频道的API 。
有趣的是,我可以通过channel number连接到 Android 上的服务,但反过来不行。我认为 sdpd 可能已经过时了——所有对它的引用都已经有好几年了。