Android: как работают Bluetooth UUID?

Я неЯ не понимаю, что означает Bluetooth UUID. Обозначают ли UUID протоколы (например,RFCOMM)? Если так, то почемуcreateRfcommSocketToServiceRecord() методы требуют UUID, когда они указывают rfcomm прямо в своих именах? Почему образец кода BluetoothChat имеет, по-видимому, произвольный UUID в жестком коде?

Мой вопрос возникает потому, что согласноэтот вопросЯя получаю исключение нулевого указателя, когда устройства под управлением 4.0.4 пытаются подключиться (к внешнему устройству, не являющемуся Android), используя отражение. Однако решение этого вопроса нея не работаюUUID muuid = device.getUuids()[0].getUuid(); выдвигает исключение

редактировать: Ямы решили эту проблему путем жесткого кодирования UUID для службы последовательного порта согласноэтот ответ (с помощьюUUID.fromString("00001101-0000-1000-8000-00805f9b34fb");).Я'

Я также озадачен тем, почему мне нужно предоставить UUID для создания незащищенного сокета rfcomm, используяcreateInsecureRfcommSocketToServiceRecord(), но не используя метод отражения.

Кто-нибудь может выправить меня?

Ответы на вопрос(5)

Ваш ответ на вопрос