【问题标题】:Launch a specific android app with NFC使用 NFC 启动特定的 Android 应用程序
【发布时间】:2016-08-03 09:50:59
【问题描述】:

我想通过 NFC 卡启动特定的 Android 应用。我不想让安卓问我应该打开哪个应用程序。它应该立即打开我的应用程序。我怎么能那样做?

我已经用MIME-Types 试过了,但是没有用。我可以指定我自己的MIME-Type 吗?是否可以检查MIME-Type text/plain 中的特定文本(意图过滤器?)?

例如:我希望我的应用程序在 NFC 卡存储特定文本(如“测试”或其他内容)时启动。

这个想法是它应该适用于所有常见的移动操作系统。因此,android 应用程序链接将不起作用。

【问题讨论】:

标签: android nfc launch


【解决方案1】:

您可以创建自己的应用程序 mimeType。

您可以在您的 NDEF 消息中创建一个自定义 mimeType,然后创建一个与其完全匹配的意图过滤器。这意味着您的应用将被启动,因为它是最具体的过滤器。

例子:

<intent-filter>
    <action android:name="android.nfc.action.NDEF_DISCOVERED" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="application/vnd.com.my.app.package.customString" />
</intent-filter>

取自我在此处提供的上一个示例:https://stackoverflow.com/a/27397938/3312868

【讨论】:

  • 我猜这只适用于安卓设备。也许我应该使用 NdefRecord createEternal(string domain, String type, byte [] data) 创建一个外部 NDEF 类型。这行得通吗?
  • 我对 Windows phone 不熟悉,但您不能注册特定的 mimeType 吗?如果您想创建外部记录,请查看上面 Michael Roland 的评论。
  • 我已经解决了这个问题。您可以创建自己的 MIME 类型。使用此 MIME 类型,您可以启动您的应用程序。不过感谢您的帮助。
猜你喜欢
  • 2015-02-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多