У меня возникла проблема с целостностью данных при использовании гнезда RFCOMM через Bluetooth в Android. У меня нет проблем с подключением, но данные, которые я получаю, искажены и не совпадают с данными, которые отправляются. Данные отправляются устройством RS232 через адаптер Bluetooth, к которому подключается телефон. С адаптером проблем нет, так как данные правильно принимаются, если я подключаюсь к ноутбуку.
Мое соединение Bluetooth обрабатывается на основе примера приложения BluetoothChat , найденного на сайте разработчика Android (http://developer.android.com/resources/samples/BluetoothChat/index.html), без изменений. Отправляемые данные представляют собой обычный текст и управляющие символы (которые перед отображением для пользователя). Конкретная проблема, с которой я столкнулся, заключается в том, что часть текста отсутствует, часть повторяется и т. д.
Самое смешное, что если я подключаюсь к компьютеру с терминальным приложением и печатаю там, данные передаются нормально. Кроме того, если я подключаюсь к устройству с помощью приложения GetBlue , данные получаются нормально.
Таким образом, я полагаю, что проблема в том, что GetBlue, возможно, делает по-другому для обработки передачи данных через Bluetooth, или есть другой способ получения данных Bluetooth через разъем RFCOMM на Android?