android - 两个 NFC 标签分别链接到项目中的两个不同 Activity ?

标签 android android-intent nfc intentfilter ndef

我正在做一个 NFC 应用程序,想知道这种情况是否可能:

比如说,我在一个项目中有 2 个 NFC 标签和 2 个 Activity 。 编写NFC A打开Activity A,在NFC A中写MIME类型为

application/com.example.hello

在项目的 list 文件中, Activity A 具有此 Intent 过滤器:

  <intent-filter>
  <action android:name="android.nfc.action.NDEF_DISCOVERED" />
  <data android:mimeType="application/com.example.hello" />
  <category android:name="android.intent.category.DEFAULT" />
  </intent-filter>

所以,这工作得很好。 我要添加另一个 NFC 标签和另一个 Activity 。 NFC B写的是打开Activity B

现在,我应该如何将我的 MIME 类型写入 NFC B 并为 Activity B 设置 intent-filter?考虑到 Activity A 和 Activity B 都在一个项目和包中。

如果我在 NFC A 和 B 中为 Activity A 和 B 编写相同的 MIME 类型,我将被询问在点击时打开哪个 Activity,我不希望这样。

最佳答案

一种方法可能是在您的 list 中包含两个 MimeType。然后,您将这些 MimeType 链接到一个(附加) Activity ,该 Activity 将检查您的标签(A 或 B)上实际使用的是哪个 MimeType。根据您的发现,您可以启动相应的 Activity A 或 B。

关于android - 两个 NFC 标签分别链接到项目中的两个不同 Activity ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26861244/

相关文章:

android - 从 NFC 标签读取 URI 时丢失数据

android - 如何检测小部件是否在屏幕上/屏幕外?

android - 单击具有自定义主题的按钮时崩溃

java - Activity 内/Activity 间通信

安卓;从 intent.action_view 返回 Activity 会导致 View 上出现奇怪的叠加层

android - 静态 BroadcastReceiver 未收到自定义 Intent

android - 当设备不支持时,NFC权限是否会导致错误?

android - 如何使用 MediaSessionCompat?

java - 无法从自定义 View 访问元素

xamarin - 从应用程序外部读取 NFC 标签不会返回任何数据