На основе спецификации Bluetooth,
http://www.bluetooth.com/SiteCollectionDocuments/SPP_SPEC_V12.pdf,
2.3 Требование пользователя: «... Любое устаревшее приложение может быть запущено на любом устройстве с использованием виртуального последовательного порта, как если бы существовал настоящий последовательный кабель, соединяющий два устройства (с управляющей сигнализацией RS232)». В 4.3 «Согласование удаленного порта» «... Это необходимо сделать, если API для уровня адаптации RFCOMM предоставляет эти настройки (например, скорость передачи, четность) ... RFCOMM как таковой не будет искусственно ограничивать пропускную способность на основе настройки скорости передачи, ... "
По моему мнению, поскольку Android (2.2) не предлагает API для настройки и открытия последовательного порта, они могут не понадобиться, если вы можете обнаружить удаленное устройство BT и подключиться к нему. Я пробовал, и, кажется, работает с:
...
sock = device.createRfcommSocketToServiceRecord (myUUID);
sock.connect ();
...
где окончательный UUID myUUID = UUID.fromString ("00001101-0000-1000-8000-00805F9B34FB"); Возможно, вам придется позаботиться о разрешении и настройке Bluetooth в вашем приложении, как описано в
http://developer.android.com/guide/topics/wireless/bluetooth.html
Возможны некоторые проблемы с вызовом connect (), т. Е. Служба недоступна или в соединении отказано, что можно решить, убедившись:
- Обнаружено удаленное BT-устройство и
- Должно быть установлено использование PIN-кода (например, 0000) и
- Должно быть успешно сопряжено с вашим устройством Android
Эти шаги должны быть выполнены до запуска приложения (в котором есть вызов по соединению).
Надеюсь, это поможет.
George