Android 将蓝牙设备与Nexus S配对

Android 将蓝牙设备与Nexus S配对,android,bluetooth,nexus-s,ssp,Android,Bluetooth,Nexus S,Ssp,我们的应用程序需要通过编程将蓝牙设备与android手机配对。这在我们测试过的所有手机上都能正常工作。。。除了Nexus S 在我们从传统的PIN码配对切换到较新的安全简单配对方法之前,它一直在使用这款手机 以下是配对失败时我得到的日志: 10-31 15:16:47.933: D/ShockboxBluetooth(9676): Created socket 10-31 15:16:47.953: E/BluetoothEventLoop.cpp(110): event_filter: Rec

我们的应用程序需要通过编程将蓝牙设备与android手机配对。这在我们测试过的所有手机上都能正常工作。。。除了Nexus S

在我们从传统的PIN码配对切换到较新的安全简单配对方法之前,它一直在使用这款手机

以下是配对失败时我得到的日志:

10-31 15:16:47.933: D/ShockboxBluetooth(9676): Created socket
10-31 15:16:47.953: E/BluetoothEventLoop.cpp(110): event_filter: Received signal org.bluez.Adapter:DeviceCreated from /org/bluez/254/hci0
10-31 15:16:47.953: E/BluetoothEventLoop.cpp(110): event_filter: Received signal org.bluez.Adapter:PropertyChanged from /org/bluez/254/hci0
10-31 15:16:49.187: E/BluetoothEventLoop.cpp(110): event_filter: Received signal org.bluez.Device:PropertyChanged from /org/bluez/254/hci0/dev_00_07_80_4D_B9_00
10-31 15:16:49.566: E/BluetoothEventLoop.cpp(110): event_filter: Received signal org.bluez.Device:PropertyChanged from /org/bluez/254/hci0/dev_00_07_80_4D_B9_00
10-31 15:16:49.593: D/BluetoothService(110): updateDeviceServiceChannelCache(00:07:80:4D:B9:00)
10-31 15:16:49.609: D/BluetoothService(110):    uuid(application): 00001101-0000-1000-8000-00805f9b34fb 1
10-31 15:16:49.609: D/BluetoothService(110): Making callback for 00001101-0000-1000-8000-00805f9b34fb with result 1
10-31 15:16:49.617: I/BluetoothEventLoop.cpp(110): agent_event_filter: Received method org.bluez.Agent:OutOfBandAvailable
10-31 15:16:54.156: E/BluetoothEventLoop.cpp(110): event_filter: Received signal org.bluez.Device:PropertyChanged from /org/bluez/254/hci0/dev_00_07_80_4D_B9_00
10-31 15:16:54.156: D/BluetoothService(110): 00:07:80:4D:B9:00 bond state 10 -> 12 (0)
10-31 15:16:54.421: I/BluetoothEventLoop.cpp(110): agent_event_filter: Received method org.bluez.Agent:OutOfBandAvailable
10-31 15:16:54.988: E/ShockboxBluetooth(9676): Could not connect to Device
10-31 15:16:54.988: E/ShockboxBluetooth(9676): java.io.IOException: Connection refused
10-31 15:16:54.988: E/ShockboxBluetooth(9676):  at android.bluetooth.BluetoothSocket.connectNative(Native Method)
10-31 15:16:54.988: E/ShockboxBluetooth(9676):  at android.bluetooth.BluetoothSocket.connect(BluetoothSocket.java:204)
10-31 15:16:54.988: E/ShockboxBluetooth(9676):  at com.Impakt.Shockbox.ShockboxBluetooth$ConnectThread.run(ShockboxBluetooth.java:416)
10-31 15:16:54.992: D/ShockboxBluetooth(9676): Closed socket
这本书有很多要读的,所以我想我会缩小范围。我相信这和线路有关

10-31 15:16:49.617: I/BluetoothEventLoop.cpp(110): agent_event_filter: Received method org.bluez.Agent:OutOfBandAvailable
我们认为问题在于nexus S中的NFC。。。。也许它想用NFC来配对

我已成功使用CreateSecurerCommSocket,使用反射对。。。但是很明显,我无法在使用listenUsingRfcommWithServiceRecord创建的套接字上从设备接收数据,而且我们不想使用ListenusingSecureRFCommWithServiceRecord,因为它需要API级别10,并且我们将减少大量使用2.2/2.3.2手机的客户


感谢您的帮助。谢谢

我永远无法让它工作。似乎有些android手机拒绝使用SSP Nexus S进行配对。我们的决定是重新使用传统的PIN配对方法,如果使用通过反射访问的createRfcommSocket方法,该方法将可靠地工作