Java 在android中发送蓝牙字符串

Java 在android中发送蓝牙字符串,java,android,bluetooth,Java,Android,Bluetooth,好的,我有一个bluetooth.java类,我希望它能发送我的字符串。。然而,每当我试图发出命令时,我那支离破碎的祝酒词只是表示拒绝。我错过了什么重要的东西吗?我这里只有这两个函数 void openBT() throws IOException { UUID uuid = UUID.fromString("00001101-0000-1000-8000-00805f9b34fb"); try { mmSocket = mmDevice.createRfcom

好的,我有一个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());
}
这些是我唯一设定的

  BluetoothSocket mmSocket;
BluetoothDevice mmDevice;
String BtCommand;
OutputStream mmOutputStream;
InputStream mmInputStream

我确信是openBT功能失败了,我与设备配对很好。

您确定选择了UUID吗


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

我不确定否?我以为这个uuid对应于所有的蓝牙设备,当我尝试它时,我在两部android手机(索尼Z1和索尼Z5)之间进行了尝试。我正在使用00001112-0000-1000-8000-00805F9B34FB。一些quide:它还不能工作。。不知道为什么,我甚至尝试了一些随机的蓝牙终端应用程序,但它们甚至没有连接。我尝试在另一部手机上测试它(可能是硬件或设置有问题)