Android 读取NFC标签的内容

Android 读取NFC标签的内容,android,tags,nfc,Android,Tags,Nfc,我正在尝试读取三星Galaxy Nexus S上的NFC标签 @Override protected void onResume() { super.onResume(); String nachricht = ""; if (NfcAdapter.ACTION_NDEF_DISCOVERED.equals(getIntent().getAction())) { Parcelable[] rawMsgs = getIntent()

我正在尝试读取三星Galaxy Nexus S上的NFC标签

    @Override
protected void onResume() {
    super.onResume();
    String nachricht = "";
    if (NfcAdapter.ACTION_NDEF_DISCOVERED.equals(getIntent().getAction())) {
        Parcelable[] rawMsgs = getIntent()
                .getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES);
        if (rawMsgs != null) {
            NdefMessage[] msgs = new NdefMessage[rawMsgs.length];
            for (int i = 0; i < rawMsgs.length; i++) {
                msgs[i] = (NdefMessage) rawMsgs[i];
                nachricht = nachricht + " " + msgs;
            }

            Log.e("WriteTagApp", nachricht );
        }
    }

}
@覆盖
受保护的void onResume(){
super.onResume();
字符串nachricht=“”;
if(NfcAdapter.ACTION\u NDEF\u DISCOVERED.equals(getIntent().getAction())){
可包裹[]rawMsgs=getIntent()
.getParcelableArrayExtra(NfcAdapter.EXTRA\u NDEF\u消息);
if(rawMsgs!=null){
NdefMessage[]msgs=新的NdefMessage[rawMsgs.length];
对于(int i=0;i
带有Log.e(“WriteTagApp”,nachricht);我的应用程序将标记的消息写入调试器。 它看起来像这样:[Landroid.nfc.NdefMessage;@4184ce18

我似乎无法理解这里发生了什么,以及如何获得消息的实际内容。
如何做到这一点?

NDefMessage不是字符串,它是一个对象。通过将其合并,您只需添加其“toString”的输出方法。相反,您需要查看NdefMessage的内部,并从其中的有效负载字段中提取数据。

NdefMessage不是字符串,而是对象。通过将其合并,您只需添加其“toString”的输出方法。相反,您需要查看NdefMessage的内部并从其中的有效负载字段中提取数据。

Ah谢谢。添加了一个EditText字段,在其中输入有效负载
mNote.setText(新字符串(messages[0].getRecords()[0].getPayload());
这样您可以读取文本所在标记的第一条记录。啊,谢谢。添加了一个EditText字段,我在其中输入有效负载
mNote.setText(新字符串(消息[0].getRecords()[0].getPayload());
这样您可以读取文本所在标记的第一条记录。