Web NFC API能在渐进式Web应用程序中使用吗?

15

我需要在渐进式Web应用程序(PWA)中实现NFC(近场通信)。

我测试过的每个浏览器(Chrome MacOSX、Safari MacOSX、Safari iOS、Chrome for android)都没有在navigator中包含对象,而且似乎无法使用这个API:https://w3c.github.io/web-nfc/#conformance

在PWA中有没有可能以任何方式使用NFC?还是我必须开发原生应用程序来实现此功能?


1
你能具体说明一下测试的浏览器吗?例如,Chrome 67有navigator.nfc。但是,如果目标浏览器不支持NFC,那么你几乎无法进行polyfill。 - Yury Tarabanko
我已经更新了描述,对于我来说,当在控制台查询navigator.nfc时,chrome 67返回undefined,但这可能是因为我正在使用macOS? - Stan Hurks
可能是。我正在Win8.1上进行测试。 - Yury Tarabanko
“只要平台支持NFC API,就会尽快实现对Mac的支持。” - Yury Tarabanko
啊..好吧,我已经尝试使用Google Chrome和Safari中的远程检查器来查找NFC对象。在移动设备上(iOS最新版Safari / Galaxy S9 Chrome v67)它也没有出现在导航器中。 - Stan Hurks
2个回答

22

Web NFC API仅适用于启用标志的Chrome for Android浏览器(尝试 about:flags)。

除非您的应用程序针对某些内部企业应用程序,在其中可以在所有目标用户的浏览器中设置标志,否则我建议使用本机代码或包装器(cordova或具有本机应用程序通过Web套接字发送详细信息)

自2015年以来,此API没有取得太多进展,因此如果您针对关键应用程序进行定位,特别是当无法控制最终用户的浏览器设置时,请不要依赖此API。



网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接