gpt4 book ai didi

android - Android 2.3.6 和 4.x 的 NFC 检测不同

转载 作者:搜寻专家 更新时间:2023-11-01 08:11:27 25 4
gpt4 key购买 nike

我发现,当我将 Nexus S(运行 Android 2.3.6)放在 NFC 标签旁边时,该标签包含带有指向网站的 URI 记录的 NDEF 消息,这将原因(正如预期的那样)显示了 NFC Activity 选择器(因为我安装了多个 NFC 阅读器应用程序,并且我正在开发我自己的应用程序,它也会拦截检测到的 NFC 标签)。

但是,使用 Galaxy Nexus(Android v4,Ice Cream Sandwich)时,不会出现 Activity 选择器。它会直接启动浏览器。 LogCat 将显示:

D/NfcService(438): TAG: Tech [android.nfc.tech.MifareUltralight, android.nfc.tech.NfcA, android.nfc.tech.Ndef]
I/ActivityManager(196): START {flg=0x10008000 cmp=com.android.nfc3/com.android.nfc.NfcRootActivity (has extras)} from pid 438
I/ActivityManager(196): START {act=android.nfc.action.NDEF_DISCOVERED dat=http://www.someURL.com/someotherstuff cmp=com.google.android.browser/com.android.browser.BrowserActivity (has extras)} from pid 438

所以这给了我两个问题:

a) Android 2.3.6 和 4.x 决定表现不同,因为...?

b) 即使我试图限制我的应用程序只匹配包含 www.someURL.com 主机的 NFC 标签,即通过放置

<data
android:host="www.someURL.com"
android:pathPattern="/*"
android:scheme="http" />

进入我的 3 个 Intent 过滤器(一个用于 TAG_DISCOVERED,一个用于 TECH_DISCOVERED,一个用于 NDEF_DISCOVERED,我真的试图在那里吸引 NFC Activity 选择器的注意力......),结果不会改变。它只会打开浏览器。 ATM 唯一有效的是前台调度...

有什么想法吗?

最佳答案

您可能应该使用“android:pathPrefix”而不是“android:pathPattern”。您现在正在匹配 0 次或多次出现的“/”...

关于android - Android 2.3.6 和 4.x 的 NFC 检测不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9151187/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com