2

我正在尝试在“点击”包含特定 mime 类型的 nfc 标签时启动一项活动。我使用 mime 类型“text/plain”制作了一个标签,并将其添加到清单中:

<intent-filter>
  <action android:name="android.nfc.action.NDEF_DISCOVERED"/>
  <data android:mimeType="text/plain" />
</intent-filter>

如果我点击一个 nfc 标签,即使意图看起来正确,也不会发生任何事情,这就是我在日志中看到的内容:

03-13 23:36:56.871: INFO/ActivityManager(114): Starting: Intent { act=android.nfc.action.NDEF_DISCOVERED typ=text/plain flg=0x10000000 (has extras) } from pid 192

如果我用这个替换“mime intent-filter”:

<intent-filter>
<action android:name="android.nfc.action.TECH_DISCOVERED" />
</intent-filter>
<meta-data android:name="android.nfc.action.TECH_DISCOVERED"
                android:resource="@xml/filter_nfc"/>

当点击 nfc 标签时,活动开始。我在 2.3.3 上使用 Nexus S。

有什么线索吗?

BR,帕特里克

4

1 回答 1

7

我有一个类似的问题,可以通过添加一个类别元素来解决它:

<intent-filter>
  <action android:name="android.nfc.action.NDEF_DISCOVERED"/>
  <data android:mimeType="text/plain"/>

  <category android:name="android.intent.category.DEFAULT"/>

</intent-filter>

-奥利弗

于 2011-03-16T17:02:40.437 回答