Intereting Posts
Установить состояние BottomSheetDialogFragment для расширенного Adb не показывает устройство Nexus 5 Проект с path ': mypath' не найден в корневом проекте 'myproject' Разрешить поворот / пейзаж в одном фрагменте Службы Google Play 9.2.0 отсутствуют классы КоординаторLayout испортил всплывающее положение setError Перемещение фокуса с одного текстового поля Редактировать на другое Обнаруживать обновление приложения Android и установить класс приложения boolean для отображения / скрытия EULA Переопределение кнопки «Главная» – как мне избавиться от выбора? Как отправить запрос POST, используя залп со строкой? Можно ли использовать WebSockets или аналогичные с родным Android-приложением? Программирование на (не * для *) устройства Android SENSOR_DELAY_GAME: сколько это? Установка пользовательского привязки при перетаскивании представления Навигация Ящик полупрозрачный поверх строки состояния не работает

Обучающий модуль для Android Bluetooth для неблокирующей связи

Я ищу код примера bluetooth на Android, чтобы сделать неблокирующую связь сокетов.

Я нашел несколько примеров, таких как BluetoothChat или BluetoothSocket.java, но ни одна из них non-blocking socket communication. является non-blocking socket communication.

Ps неблокирует автоматически означает, что это должно быть асинхронным? Я думаю, что на самом деле нет – это не одно и то же, я полагаю, что я мог бы выполнять синхронную сотовую связь с таймаутом. Вот такой пример, который я ищу …

большое спасибо

Solutions Collecting From Web of "Обучающий модуль для Android Bluetooth для неблокирующей связи"

Похоже, ответ в значительной степени невозможен.

Однако с небольшим количеством манекенов, ваша система может работать так, как вы хотите

  BluetoothSocketListener bsl = new BluetoothSocketListener(socket, handler, messageText); Thread messageListener = new Thread(bsl); messageListener.start(); 

Система сообщений

  private class MessagePoster implements Runnable { private TextView textView; private String message; public MessagePoster(TextView textView, String message) { this.textView = textView; this.message = message; } public void run() { textView.setText(message); } } 

Прослушиватель сокетов

 private class BluetoothSocketListener implements Runnable { private BluetoothSocket socket; private TextView textView; private Handler handler; public BluetoothSocketListener(BluetoothSocket socket, Handler handler, TextView textView) { this.socket = socket; this.textView = textView; this.handler = handler; } public void run() { int bufferSize = 1024; byte[] buffer = new byte[bufferSize]; try { InputStream instream = socket.getInputStream(); int bytesRead = -1; String message = ""; while (true) { message = ""; bytesRead = instream.read(buffer); if (bytesRead != -1) { while ((bytesRead==bufferSize)&&(buffer[bufferSize-1] != 0)) { message = message + new String(buffer, 0, bytesRead); bytesRead = instream.read(buffer); } message = message + new String(buffer, 0, bytesRead - 1); handler.post(new MessagePoster(textView, message)); socket.getInputStream(); } } } catch (IOException e) { Log.d("BLUETOOTH_COMMS", e.getMessage()); } } }