Я не могу подключиться к модулю Bluetooth HC-05 с помощью собственного Java-приложения.JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Я не могу подключиться к модулю Bluetooth HC-05 с помощью собственного Java-приложения.

Сообщение Anonymous »

Я создал Java-приложение, в котором реализовал функцию Bluetooth. Используя документацию, мне удалось обнаружить устройства и выполнить сопряжение с ними. Мне удалось получить всю информацию об устройстве (адрес, имя), но при попытке установить связь с модулем не получается.
В конструкторе ConnectThread:

Код: Выделить всё

if (ContextCompat.checkSelfPermission(context, Manifest.permission.BLUETOOTH_CONNECT) == PackageManager.PERMISSION_GRANTED) {
try {
tmp = device.createRfcommSocketToServiceRecord(UUID.fromString("00001101-0000-1000-8000-00805F9B34FB"));
} catch (IOException e) {
Log.e(TAG, "Socket's create() method failed", e);
}
} else {
Log.e(TAG, "Missing BLUETOOTH_CONNECT permission");
}
targetSocket = tmp;
В методе ConnectThread run():

Код: Выделить всё

bluetoothAdapter.cancelDiscovery();

try {
targetSocket.connect();
Log.i(TAG, "Connection successful!");
} catch (IOException e) {
Log.d(TAG, Log.getStackTraceString(e));
Log.e(TAG, "Could not connect; closing socket", e);
try {
targetSocket.close();
} catch (IOException e2) {
Log.e(TAG, "Could not close the client socket", e2);
}
}
В MainActivity, когда я выбираю устройство из списка сопряженных устройств:

Код: Выделить всё

ConnectThread connectThread = new ConnectThread(device, mBluetoothManager, MainActivity.this);
connectThread.start();
**

Что у меня в LOGCAT**

Код: Выделить всё

ConnectThread           com.example.carcontroller            D  java.io.IOException: read failed, socket might closed or timeout, read ret: -1
at android.bluetooth.BluetoothSocket.readAll(BluetoothSocket.java:1170)
at android.bluetooth.BluetoothSocket.readInt(BluetoothSocket.java:1188)
at android.bluetooth.BluetoothSocket.connect(BluetoothSocket.java:566)
at com.example.carcontroller.ConnectThread.run(ConnectThread.java:50)
ConnectThread           com.example.carcontroller            E  Could not connect; closing socket
java.io.IOException: read failed, socket might closed or timeout, read ret: -1
at android.bluetooth.BluetoothSocket.readAll(BluetoothSocket.java:1170)
at android.bluetooth.BluetoothSocket.readInt(BluetoothSocket.java:1188)
at android.bluetooth.BluetoothSocket.connect(BluetoothSocket.java:566)
at com.example.carcontroller.ConnectThread.run(ConnectThread.java:50)

Используя Последовательный терминал Bluetooth из Google Play, мне удалось подключиться к моему модулю и отправить данные, поэтому я полагаю, что проблема на моей стороне, но не могу найти никакой информации о том, почему это происходит. Если кто-нибудь может мне помочь, было бы здорово!

Подробнее здесь: https://stackoverflow.com/questions/798 ... n-java-app
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»