gpt4 book ai didi

android - 无需特定应用即可读取 NFC 标签?

转载 作者:太空宇宙 更新时间:2023-11-03 12:18:46 27 4
gpt4 key购买 nike

我想知道是否有任何方法可以将一串文本 (URL) 保存到 NFC 标签,比如 MIFARE 或 NTAG203,其他设备(智能手机)无需读取任何特殊标签即可读取应用。

我已经测试了几个应用程序,例如触发 Android,并注意到如果读取标签的设备没有读取标签上的数据/指令所需的应用程序,它仍会打开一个 URL,将您发送到 Play 商店以下载该应用程序。

所以必须有一种方法来保存所有/一些支持 NFC 的手机可读的一些数据。简单地说,我想为 Android 创建一个应用程序,它将数据写入 NFC 标签,并且数据可以由随机启用 NFC 的手机读取/打开/执行。

那么是否可以准备一个 NFC 标签来触发读取设备上的某些操作而不需要特定的应用程序?我可以使用我的应用在 NFC 标签上写入什么类型的数据来实现这一点?

最佳答案

首先,总的来说,我同意CommonsWare的观点,即它始终是处理NFC事件的“特殊”应用。但是,在研究 Android 时,我会将 AOSP 的各种平台应用程序视为 Android 系统的一部分。尽管并非所有这些都适用于所有设备。

查看 Andrid 4.4+,此类系统应用程序处理以下数据类型:

  • 浏览器:方案为“http:”和“https:”的 URI。
  • 联系人和拨号程序:用于导入联系人的 MIME 类型“text/vcard”和“text/x-vcard”。
  • 电子邮件:方案为“mailto:”的 URI

此外,如果没有其他应用程序处理某个标签,NFC 设备应该(?)有标签应用程序,它会尝试处理各种类型(在用户确认后):

  • 具有方案“tel”的 URI 将导致 ACTION_CALL Intent 调用给定号码。
  • 具有方案“sms”/“smsto”的 URI 将导致 ACTION_SENDTO Intent 开始编辑 SMS 消息。
  • 其他 URI 应该(?)在 ACTION_VIEW Intent 中转发。
  • 类型为“text/x-vcard”的 MIME 类型记录(如果尚未处理)应在 ACTION_VIEW Intent 中转发。
  • 文本 RTD 记录的文本消息(不是文本/* MIME 类型!)应该显示在标签应用程序中。不幸的是,许多愚蠢的(!)NFC 应用程序注册了文本记录,因此您通常无法访问标签应用程序。
  • 带有 image/* 类型的 MIME 类型记录(如果 Android 支持图像类型)应该显示在 Tag 应用中。

一些记录由 NFC 服务本身处理(这在 Android 上应该始终可用):

  • Android 应用程序记录(类型名称为“urn:nfc:ext:android.com:pkg”的 NFC 论坛外部类型)导致 URI“market://details?id={PACKAGE_NAME}”的 ACTION_VIEW Intent 是已发送。
  • 解析类型名称为“urn:nfc:nokia.com:bt”的 NFC 论坛外部类型以进行蓝牙连接切换。
  • NDEF 消息以 Handover Select RTD 记录开头并包含类型为“application/vnd.bluetooth.ep.oob”的 MIME 类型记录被解析以用于蓝牙连接切换。

关于android - 无需特定应用即可读取 NFC 标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23546481/

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