Android蓝牙连接-服务发现失败


问题内容

我正在尝试创建一个用于测试设备的基本蓝牙应用程序。

我从developer.android获得了代码。这是链接:http
:
//developer.android.com/guide/topics/connectivity/bluetooth.html#ConnectingDevices

这是我的线程代码的运行部分:

     public void run() {

        mBluetoothAdapter.cancelDiscovery();
        Log.i(TAG, "Discovery Cancel!");

        try {
            Log.i(TAG, "Connection Started");
            mmSocket.connect();
            Log.i(TAG, "Connection Ended");
        } catch (IOException e) {
            try {
                Log.e(TAG, "Connection Failed", e);
                mmSocket.close();
            } catch (IOException e2) {
                Log.e(TAG, "Connection Close Failed", e2);
            }
            return;
        }

无论我尝试了什么,都行不通mmSocket.connect();。总是抛出IOException,我从logcat中获取该日志:

java.io.IOException: Service discovery failed at android.bluetooth.BluetoothSocket$SdpHelper.doSdp(BluetoothSocket.java:403) at android.bluetooth.BluetoothSocket.connect(BluetoothSocket.java:213)

顺便说一句,我正在研究android ics 4.0.4。

我知道这不是设备问题,因为我在其他设备上尝试了此应用。


问题答案:

我不知道,我仍然不了解UUID,但问题出在UUID。我正在使用从内核日志中获取的UUID,它是00001105-0000-1000-8000-00805F9B34FB