Я установил NXP TagWriter и NFC TagInfo на Nexus S, том же устройстве, которое использовалось для разработки моего приложения NFC. Проблема в том, что мое приложение не отображается в диалоговом окне «Завершить действие с помощью» после чтения тега, отображаются только оба приложения, установленные с рынка. После некоторой отладки я попытался использовать демонстрационное приложение, и результатом было такой же. Что мне здесь не хватает? Должны ли приложения устанавливаться из магазина, чтобы фильтры намерений анализировались должным образом?
Обновить
Мой фильтр намерений был просто
<intent-filter>
<action android:name="android.nfc.action.TAG_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
Я попытался добавить другие, как указано в руководстве, также один за другим. как все вместе без успеха. Может ли это быть как-то связано с типом пантомимы?
Когда считывается тег NFC, только эти две строки относятся к действию и больше ничего.
INFO/ActivityManager(111): Starting: Intent { act=android.nfc.action.TECH_DISCOVERED flg=0x10000000 cmp=com.nxp.nfc.tagwriter/.activities.DashboardActivity (has extras) } from pid 197
INFO/ActivityManager(111): Starting: Intent { cmp=com.nxp.nfc.tagwriter/.activities.ConfirmLicenseActivity } from pid 6250
Увидев, что android.nfc.action.TECH_DISCOVERED
запускается, я добавил следующий фильтр намерений:
<intent-filter>
<action android:name="android.nfc.action.TECH_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
<meta-data android:name="android.nfc.action.TECH_DISCOVERED"
android:resource="@xml/nfc_tech_filter" />
И res/xml/nfc_tech_filter.xml
содержит
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<tech-list>
<tech>android.nfc.tech.IsoDep</tech>
<tech>android.nfc.tech.NfcA</tech>
<tech>android.nfc.tech.NfcB</tech>
<tech>android.nfc.tech.NfcF</tech>
<tech>android.nfc.tech.NfcV</tech>
<tech>android.nfc.tech.Ndef</tech>
<tech>android.nfc.tech.NdefFormatable</tech>
<tech>android.nfc.tech.MifareClassic</tech>
<tech>android.nfc.tech.MifareUltralight</tech>
</tech-list>
</resources>