Android конвертирует массив байтов обратно в NdefMessage

Я работаю над проектом, который использует nfc для передачи данных. Устройство A в качестве HCE и устройство B в качестве считывателя. В устройстве A я конвертирую NdefMessage в массив байтов, а затем отправляю на устройство B. Итак, моя проблема теперь в устройстве B, как мне преобразовать полученные данные массива байтов обратно в NdefMessage?


person bernard    schedule 02.12.2019    source источник
comment
Покажите код, с которым вы читаете карту, на устройстве B, похоже, вы читаете его на низком уровне, когда вам это не нужно.   -  person Andrew    schedule 02.12.2019
comment
Спасибо за ответ. Хорошо. Обычно нам просто нужно получить тег и ndefMessage из полученного намерения. Но из-за условий проекта isodep необходим для извлечения данных. В конце процесса получен байт массива (байт NdefMessage).   -  person bernard    schedule 03.12.2019


Ответы (1)


Согласно https://developer.android.com/reference/android/nfc/NdefMessage.html

Ты сможешь

Используйте NdefMessage(byte[]) для создания сообщения NDEF из двоичных данных,

Это преобразует массив байтов в NdefMessage

Or

https://www.dummies.com/consumer-electronics/nfc-data-exchange-format-ndef/

Детализирует сообщение Ndef и формат записи, чтобы вы могли преобразовать его самостоятельно.

person Andrew    schedule 03.12.2019
comment
Да. Это правильно. В прошлый раз это вызвало ошибку из-за какой-то ошибки, которую я сделал при создании записи Ndef, поэтому массив байтов обратно в NdefMessage не удался. Глупый я. Большое спасибо. - person bernard; 03.12.2019