Чтение простых данных в переменную с помощью NFC на Android

Я делаю простое приложение для Android. Основная функция, я хочу читать данные из тега NFC. У меня уже есть базовое приложение (не намного больше, чем приложение Hello World). Я использую Затмение. У меня есть запись приложения Android на теге, и приложение успешно запускается при сканировании моего тега. Я просто не знаю, как продолжить. Мне необходимо:

  • В дополнение к AAR, в теге хранится четырехзначное число.

  • Когда тег отсканирован, откройте приложение и сохраните четырехзначное число в локальной переменной (я думаю, с помощью намерения?).

Любая помощь приветствуется, а также простейший код, который сделает работу. Это мое первое приложение для Android и впервые использующее Java.

1 ответ

Решение

В вашей активности запуска вы должны проверить тип намерения, если он совпадает с тем, который вы сохранили в теге - getIntent.getType(). Затем вы можете прочитать данные из тега, используя этот код:

Parcelable[] rawMsgs = intent.getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES);
NdefMessage msg = (NdefMessage)rawMsgs[0];
NdefRecord cardRecord = msg.getRecords()[0];
String message = new String(cardRecord.getPayload());

Если это число, то вам нужно проанализировать его из сообщения. Я надеюсь, это поможет вам.

Другие вопросы по тегам