Я смотрю на способ подключения через rfcomm-разъем неуверенно. Я смог найти способ, упомянутый ниже
Method m = device.getClass().getMethod("createInsecureRfcommSocket", new Class[] {int.class});
tmp = (BluetoothSocket) m.invoke(device, 1);
Это пока делает то, что я хочу. Даже в документации по здесь говорится, что нам нужно использовать createInsecureRfcommSocketToServiceRecord для небезопасных соединений. Но такого метода нет. Единственный способ, которым я узнал, - использовать отражение, как показано выше. И даже в том, что метод, который передается в createInsecureRfcommSocket, а не createInsecureRfcommSocketToServiceRecord. Я просто хотел знать, насколько надежным является этот способ. Если я упоминаю createInsecureRfcommSocketToServiceRecord в методе, соединение никогда не произойдет.