Android设置蓝牙服务名称的问题

时间:2010-09-01 14:29:21

标签: android bluetooth

我正在开发一个应用程序,作为蓝牙外部设备的蓝牙服务器(通信由外部设备启动)。来自蓝牙服务的外部设备请求我正在部署具体的服务名称(“PWAccessP”),所以我通过以下指令启动serversocket:

serversocket = Activa.myBluetoothAdapter.listenUsingRfcommWithServiceRecord("PWAccessP", UUID.fromString("00001101-0000-1000-8000-00805F9B34FB"));

但是当一个测试应用程序搜索我的手机提供的蓝牙服务时,我得到以下日志:

search services on 38E7D82E98F8 HTC Desire
service Unknown found btspp://38E7D82E98F8:22;authenticate=false;encrypt=false;master=false

使用“Unknown”作为服务名称,表示所提供服务的名称未知。我已经检查过这个服务是我正在部署的服务。

我正在工作的手机是HTC Desire。

有人知道会出现什么问题吗?

提前致谢。

1 个答案:

答案 0 :(得分:1)

也许这个问题与android 2.1有关。使用'PWAccessP'作为服务名称创建新服务没有问题。 也许你应该尝试使用Android 2.2设备。

只是为了提醒您,PWAccessP设备将存储来自以前连接的RFCOMM频道号,并将使用此号码连接到SPP服务器设备。因此,如果您的Android SPP应用程序重新启动并注册新的RFCOMM通道号,连接将失败,并且PWAccess设备将再次重新启动查询过程..这是设备上的问题。在右边,它应该在进行RFCOMM连接之前先执行SDP查询,但它没有。