使用我的应用程序拦截NFC意图时出现问题



这是我的意向过滤器代码。。。

<activity android:name="IntentReceiver">
      <intent-filter>
        <action android:name="android.nfc.action.TAG_DISCOVERED"/>
        <category android:name="android.intent.category.DEFAULT" />
        <data
          android:scheme="http"
          android:host="mytix.com"
          android:pathPattern="/" />
        <data
            android:scheme="http"
            android:host="www.mytix.com"
            android:pathPattern="/" />
      </intent-filter>
    </activity>

我想做的是拦截任何具有url数据类型并且url指向的NFC标签http://mytix.com(或http://www.mytix.com)。

然而,上面的代码似乎不起作用。相反,我的NFC标签只需打开浏览器,进入有问题的url(这是我检查过的正确url!:)。

如何拦截意图?我最终想要的是一个标签,如果用户没有应用程序,它会把他们带到移动网站,但如果他们安装了应用程序,就会直接带他们到应用程序。我相信我的思路是正确的,但由于某种原因,上面的代码不起作用。

我通过从Eclipse btw直接构建到手机来安装应用程序——这有什么不同吗?

感谢

Tom

我想做的是拦截任何具有url数据类型并且url指向的NFC标签http://mytix.com(或http://www.mytix.com)。

尝试NDEF_DISCOVERED,而不是TAG_DISCOVERED。Android将只支持NDEF格式的NFC标签的直接发布。如果你的NFC标签使用了其他东西,你不能使用<intent-filter> AFAIK,而是必须自己解析数据。

这是一个图书示例项目,演示了将URL写入NDEF格式的标签(通过浏览器应用程序中的"共享页面"选项触发),并使用写入的特定URL响应NDEF格式标签。

最新更新