Прием сообщения по Bluetooth

Ответить
Аватара пользователя
red
Сообщения: 5
Зарегистрирован: 28 авг 2015, 15:56

Прием сообщения по Bluetooth

Сообщение red » 03 сен 2015, 14:48

Помогите пожалуйста новичку разобраться с приемом сообщения по Bluetooth...
Использую этот метод для приему сообщения длинной 8 байт.

Код: Выделить всё

        public void run() {
            byte[] buffer = new byte[8];
            int bytes;
            while (true) {
                try {
                    bytes = mmInStream.read(buffer);            //read bytes from input buffer
                    StringBuilder sb = new StringBuilder();
                    for (byte b : buffer) {
                        sb.append(String.format("%02X", b));
                    }
                    bluetoothIn.obtainMessage(handlerState, bytes, -1, sb).sendToTarget();
                } catch (IOException e) {
                    break;
                }
            }
        }
На выходе в sb у меня получается hex строка длинной 8 байт в формате (46000CFFFF008600). Можно ли как то на выходе получать массив integer или byte в формате:
sb[0] = 0x46;
sb[1] = 0x00;
sb[2] = 0x0C;
sb[3] = 0xFF;
sb[4] = 0xFF;
sb[5] = 0x00;
sb[6] = 0x86;
sb[7] = 0x00;
Причем если первые байты равны 0x00 они просто не отображаются, то есть на самом деле должно быть:
sb[0] = 0x00;
sb[1] = 0x46;
sb[2] = 0x00;
sb[3] = 0x0C;
sb[4] = 0xFF;
sb[5] = 0xFF;
sb[6] = 0x00;
sb[7] = 0x86;
Помоги пожалуйста!

Ответить