我目前正在构建一个NFC编写器应用程序,目前我只是在玩基本的NFC和使用标签读/写。
我拥有的标签类型是带有NTAG216芯片的NFC论坛类型2标签。
我正在尝试在应用程序关闭时读取标记时启动应用程序。我可以使用其他NFC标签类型,但是当我扫描这些标签时,我会得到默认的“新标签收集”屏幕。
目前,我的应用程序具有意图过滤器,可以打开各种类型的NFC Intent和各种类型的NFC技术。
在我的清单中:
<intent-filter>
<action android:name="android.nfc.action.NDEF_DISCOVERED" />
<action android:name="android.nfc.action.TECH_DISCOVERED" />
<action android:name="android.nfc.action.TAG_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data android:name="android.nfc.action.TECH_DISCOVERED"
android:resource="@xml/nfc_tech_list" />
当应用程序启动时,它只需更改文本视图中的文本(与其他NFC标签一起使用):
if(getIntent().hasExtra(NfcAdapter.EXTRA_TAG)){
TextView mainText = (TextView) findViewById(R.id.mainText);
mainText.setText("App Launched by NFC");
vibrate();
}
我的nfc_tech_list文件:
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<tech-list>
<tech>android.nfc.tech.MifareUltralight</tech>
<tech>android.nfc.tech.MifareClassic</tech>
<tech>android.nfc.tech.IsoDep</tech>
<tech>android.nfc.tech.Ndef</tech>
<tech>android.nfc.tech.NdefFormatable</tech>
<tech>android.nfc.tech.NfcA</tech>
<tech>android.nfc.tech.NfcB</tech>
<tech>android.nfc.tech.NfcBarcode</tech>
<tech>android.nfc.tech.NfcF</tech>
<tech>android.nfc.tech.NfcV</tech>
</tech-list>
可能是标签上没有数据吗? 或者它与标签本身有关吗?
感谢任何帮助。
更新: 原来我的标签兼容的技术如下