私は一般的に Ndef について質問しているわけではありません。データ交換のためになんらかの形式が必要であることは明らかです。
非 Ndef (特に Mifare Classic) と Ndef NFC チップの両方を読み取る必要があるアプリケーションに取り組んでいます。両方を読み取るためのルーチンを分離し、検出部分も管理しました。
Tag tag = intent.getParcelableExtra( NfcAdapter.EXTRA_TAG );
String[] techList = tag.getTechList();
for ( String tech : techList ) {
if ( MifareClassic.class.getName().equals( tech ) ) {
String uid = byte2HexString( tag.getId() );
// TODO
} else if ( Ndef.class.getName().equals( tech ) ) {
return this.readNdef( intent );
}
}
しかし、よくわからないのは抽象化部分です。実際に非Ndef(MC)チップからNdefにデータをエンコードしようとする必要がありますか(それが可能であれば)、またはこれらの抽象化レイヤーを完全に分離する必要がありますか?データを Ndef にエンコードする利点はありますか?