关于NFC返回的NDEF格式.

一个NDEF格式的标签使用一个NdefMessage来包装,一个NdefMessage由0个或多个NdefRecord组成,其中有各种各样的NdefRecord,比如放Url的,放文本信息的等等,这里介绍的是放文本信息的NdefRecord的格式:

一个NdefRecord由四个字段构成:
3-bit TNF:类型名称格式,可变长度类型RTD:记录类型定义,可变长度ID:唯一标识该记录,可变长度的负载:就是文本信息
这对读取NDEF格式的标签信息有用,同是在写信息时,自己构造NdefMessage时候还会用到。

4.写入NDEF格式的文本信息到NFC标签中

当NFc可读时:

Parcelable[] rawArray = intent.getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES);

// 1.一个NDEF格式的标签使用一个NdefMessage来包装.
NdefMessage mNdefMsg = (NdefMessage) rawArray[0];
NdefRecord mNdefRecord = mNdefMsg.getRecords()[0];

try {
    if (mNdefRecord != null) {
        readResult = new String(mNdefRecord.getPayload(), "UTF-8");
        System.out.println(readResult);
        Toast.makeText(this, "readResult==" + readResult, Toast.LENGTH_SHORT).show();
        return true;
    }
} catch (UnsupportedEncodingException e) {
    e.printStackTrace();
}



你可能感兴趣的:(安卓,安卓新技术)