在android中发送蓝牙字符串

Dav*_*2nd 5 java android bluetooth

好的,所以我有一个bluetooth.java类(我希望)会发送我的字符串..但是每当我尝试发送命令时,我的破碎的吐司只是显示说不.我错过了重要的事情吗?我只有这两个功能..

void openBT() throws IOException {

    UUID uuid = UUID.fromString("00001101-0000-1000-8000-00805f9b34fb");
    try {
        mmSocket = mmDevice.createRfcommSocketToServiceRecord(uuid);
    } catch (IOException e) {
        Toast.makeText(getApplicationContext(), "Unable to create socket", Toast.LENGTH_LONG).show();
    }
    try {
        mmSocket.connect();
    } catch (IOException e) {
        Toast.makeText(getApplicationContext(), "Unable to connect to socket", Toast.LENGTH_LONG).show();
    }
    mmOutputStream = mmSocket.getOutputStream();
    mmInputStream = mmSocket.getInputStream();
}

void sendData2() throws IOException {
    if (BtCommand == "0"){
        msg = "Fan2 Off";
    }
    if (BtCommand == "1"){
        msg = "Fan2 On";
    }

    mmOutputStream.write(msg.getBytes());
}
Run Code Online (Sandbox Code Playgroud)

这些是我设定的唯一内容

  BluetoothSocket mmSocket;
BluetoothDevice mmDevice;
String BtCommand;
OutputStream mmOutputStream;
InputStream mmInputStream
Run Code Online (Sandbox Code Playgroud)

我确信这是openBT功能失败,我配对设备很好.

Maj*_*jkl 0

您确定选择了 UUID 吗?

UUID 列表

或者,尝试重新编写您的代码。我使用 2 个线程(1 个用于连接,第二个用于连接和通信)