【问题标题】:store html on nfc tag在 nfc 标签上存储 html
【发布时间】:2022-04-23 18:59:48
【问题描述】:

NFC 标签阅读器,尤其是 Android 设备,是否可以在扫描后打开存储在标签上的网页?

我不想存储 URL,我想以纯文本形式存储网页并在扫描后呈现该网页。支持吗?

<html><body>No signal? Bookmark this page!<img src="http://bit.ly/example"/>Test Image</img></body></html>

上面的例子只有 106 个字节,所以可以适应大多数 NFC 标签,这会在网页中打开还是可以有某些指令将其呈现为网页?

【问题讨论】:

    标签: android mobile nfc


    【解决方案1】:

    如果您将标签的 MIME 类型设置为 text/html,则可能会在设置为读取包含该 MIME 类型的 NFC 标签的浏览器中呈现。是否有任何这样的浏览器,我不能说。 AOSP 浏览器应用程序不支持这一点——它唯一支持的 NFC 标签是带有 httphttps 方案的 URL,基于 the current contents of its manifest

    【讨论】:

      【解决方案2】:

      是的,您可以在 NFC 标签上存储网页 - 实际上您可以存储任何内容。这并不意味着这是一个好主意。如果您不决定要使用的标签,那么 html 是个坏主意。而是存储一个 URL 并在线获取数据。或者以更紧凑的格式存储数据。

      【讨论】:

      • 假设人们并不总是有互联网连接。无论如何,如果浏览器没有像我们已经建立的那样读取它,那么这不是一个可行的想法
      【解决方案3】:

      编辑的附加信息:

      此链接上的 Android 开发者网站:

      https://developer.android.com/guide/topics/connectivity/nfc/nfc

      包含丰富的信息,在阅读后解释了为什么这种特殊方法具有挑战性,同时也激发了许多其他替代想法、方法、方式和手段......我强烈建议您查看!!!

      ********** 编辑结束 ************

      原始答案:

      我已经尝试过同样的方法,并创建了一个 MIME 类型 text/html 的自定义 NDEF 消息,其中一个完全编码的 HTML 文档作为所述 MIME 类型的数据字段中的文本(& 所有标准标签,例如 & & so上)。在浏览器窗口中呈现页面时,我没有任何运气。通常,在扫描 NFC 芯片时,它只返回一个新标签响应,显示我的 MIME“text/html”前缀,甚至完全省略了相关 HTML 编码的显示!

      很郁闷..

      但是 - 再试一次,据我了解,最近发布的 Chrome 浏览器有一个可以激活的实验性 NFC 功能的标志。

      在 Chrome 浏览器中,导航到 chrome://chrome-urls 并选择标志链接(或直接转到 chrome://flags ),然后在搜索栏中输入 NFC。当出现两个左右选项时,将标志从默认更改为启用。

      现在,我知道这允许网站与 NFC 标签上的数据进行交互,并允许您将内容字段编写为变量等,但我不知道它是否会解决我们的“渲染 MIME 类型text/html 直接记录为网页”的问题。

      我会测试一下并告诉你...

      【讨论】:

        【解决方案4】:

        我和你有类似的想法,正在调查这个想法。但是,默认情况下,android 没有可以默认识别此类标签的应用程序...甚至 android chrome。

        但我最终所做的探索是创建一个 NFC 标签项目,该项目可以生成具有text/htmltext/html+gzip 的 mime 记录的标签(仅供参考:text/html+gzip 在技术上不是正式注册的 mime记录类型,但我认为它仍然保持其他组合格式 + 压缩的 mime 记录的正常语义)。它位于https://github.com/mofosyne/js-ndef-html-tag 以生成标签。

        至于查看它,我创建了一个实验性的 android 应用程序,其中我还为 text/htmltext/html+gzip 放置了一个意图挂钩,以便任何具有此类内容的 NFC 标签将自动打开 https://github.com/mofosyne/NFCMessageBoard 并显示标签的 html 内容。

        但理想情况下,您会推动 android 添加对直接查看 html 标签的原生支持。

        在那之前,官方的回答是不,你不能。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-07-05
          • 2011-08-12
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多