Я пишу приложение для Android, чтобы общаться с аппаратным устройством, которое находится вне моего контроля.
Мое приложение создает прослушивающий сокет usi ng listenUsingRfcommWithServiceRecord и UUID 00001101-0000-1000-8000-00805F9B34FB. Затем он вызывает accept () для этого сокета, чтобы дождаться подключения удаленного устройства, но этого не происходит.
Я разговаривал с производителями оборудования, и они сказали, что их устройство «просто подключится к каналу 1» на удаленном устройстве. т.е. он не выполняет обнаружение SDP для определения правильного номера канала. Они отказываются менять это (хотя это, конечно, неправильно)
Мой вопрос: есть ли способы заставить Android использовать фиксированный номер канала RFCOMM? Возможно, используя отражение, например трюк с прямым вызовом createRfcommSocket при подключении к клиенту.