0

我做了一个简单的应用程序,通过 BT 将我的手机与 Arduino 连接起来,一切顺利。我的手机有 Android 2.3.6... 但是,当我在平板电脑上尝试该应用程序(使用 android 4.0.3)时,我无法连接。我在这里发布特定的代码:

try {
        BluetoothSocket socket = mydevice.createRfcommSocketToServiceRecord(UUID.fromString(ARDUINO_STANDAR_UUID));
        socket.connect();
        OutputStream output = socket.getOutputStream();
        InputStream input = socket.getInputStream();
        Log.d(TAG, "Connected");
    }
    catch (IOException e) { Log.e(TAG, e.getMessage()); }
}

使用日志,问题出在 socket.connect(); 那时,我必须输入设备的 PIN,但无论如何它都无法连接......错误是“连接被拒绝”......

有什么问题?

4

1 回答 1

0

尝试这样的事情来处理连接。前几天我刚刚将一个旧的 android-10 应用程序更新为 android-17 并处理了这个问题。

BluetoothDevice yourDevice;
try {
        Method m = yourDevice.getClass().getMethod( "createInsecureRfcommSocket", new Class[] { int.class } );
        selectedDeviceSocket = (BluetoothSocket) m.invoke( yourDevice, Integer.valueOf( 1 ) );
        selectedDeviceSocket.connect();
    }
于 2013-07-26T21:32:23.187 回答