【转】iOS NFC

概述

iOS 在 iOS11(iPhone7/iPhone7 Plus) 之后开放 NFC 主动扫描功能

并且在 iOS13(iPhoneXS/iPhoneXR) 后开放 NFC 后台扫描功能

时间表对照

【转】iOS NFC

所以在 iOS 端通常有两个业务场景:

主动扫描:用户主动打开 App 并开启 NFC 功能扫描

场景为 :设备中主动打开我们的 App 并开始 NFC 扫描进程,然后可以识别到靠近的 NFC 标签中的数据。

最低硬件要求:
系统版本: iOS 11
硬件: iPhone 7 及以上

后台扫描:用户不打开 App,通过手机扫描弹窗后,打开 App

场景为 :设备中不打开 App,靠近 NFC 标签后,手机出现弹窗,然后提示打开相关的 App,并传入数据。(类似使用手机刷卡地铁进站时,会弹出北京通)

后台模式扫描要求:
硬件: iPhoneXS/iPhoneXR 及以上

NFC 芯片存储容量

芯片中存储内容的大小限制,主要由芯片类型确定,市场上主要有以下几种主流的容量:

  1. 144 字节 — 使用 NXP NTAG 203/213 芯片 主要用来网址标签、蓝牙配对标签 如 门禁钥匙扣、电梯卡
  2. 888 字节 — 使用 NXP NTAG 216 芯片 主要用来 多任务标签、NFC 电子名片(包含姓名、手机、邮箱等)、华为一碰传贴纸(电脑手机传输文件)、小米碰碰贴(可以自定义动作标签,如开关蓝牙,打开 WiFi )等。
  3. 4000/8000 字节 — 其他类芯片 可以用来存储图片等(暂时没有找到商业应用场景)。

一个包含了姓名、电话、邮箱、公司名称、邮箱、网址的NFC标签会占有约 159 字节的容量。

数据格式要求: NDEF

iOS 目前只支持 NDEF 格式的内容

NDEF 格式

NDEF 格式是 NFC FROUM 发布的一个通用 NFC 数据传输格式,支持 UTF-8 编码、Unicode 编码,内容支持文本内容、URI 内容,甚至支持图片内容。

【转】iOS NFC

更为详细的,这篇文章里讲解的更细致: www.pianshen.com/article/860…

NDEF 的文本格式

【转】iOS NFC 这是整体的文本数据格式,第一个字节用来描述数据的状态;后面的 n-1 个字节用来描述语言的编码,如英语、还是日语、汉字;最后面不固定长度,

【转】iOS NFC 上面的是文本格式下,状态字节的具体编码格式。

NDEF 的 URI 格式

限制

这些情况下无法使用后台 NFC 功能:

  1. 重启手机后,没有解锁过
  2. 有一个 NFC 进程正在运行
  3. Apple 钱包正在使用
  4. 相机正在使用
  5. 飞行模式下

具体 iOS NFC 开发流程

  1. AppleID 开通 NFC Tag Reading 功能。
  2. 工程进行描述文案等配置。
  3. 代码开发。
  4. 如果需要支持后台扫描,还需要支持 Universal Link 功能。

注意点

1.Apple NFC 不支持支付相关的业务场景,如扫描银行卡进行 NFC 支付功能。

【转】iOS NFC 2.同时只能存在一个扫描进程 Session。
3.一个扫描进程 Session 只能存在 60s,超过后需要重新开启一个。
4.可以配置同时扫描多个或者单个 tag,配置单个时,识别到一个 tag 后会停止。

参考文章

_ developer.apple.com/documentati…_

_ www.jianshu.com/p/25b8ff698…_

_ medium.com/cardsmobile…_

_ www.raywenderlich.com/9582458-get…_

Original: https://www.cnblogs.com/wi100sh/p/15162395.html
Author: wi100sh
Title: 【转】iOS NFC

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/553922/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Kubernetes服务发现之Service详解

    一、引子 Kubernetes Pod 是有生命周期的,它们可以被创建,也可以被销毁,然后一旦被销毁生命就永远结束。通过 ReplicationController 能够动态地创建…

    技术杂谈 2023年7月11日
    065
  • 设计一个回调要注意哪些事情

    设计一个回调要注意哪些事情 回调是我们在设计系统的时候经常会使用到的, A服务调用B服务, 但是如果B服务提供的是一个较长时间的、异步的接口, 那么我们就会想到使用一个回调, 让B…

    技术杂谈 2023年6月1日
    092
  • 谈谈Raft

    本文主要参考: 极客时间-etcd 实战课 GitChat-分布式锁的最佳实践之:基于 Etcd 的分布式锁 谈到分布式协调组件,我们第一个想到的应该是大名鼎鼎的Zookeeper…

    技术杂谈 2023年7月25日
    076
  • Springboot中整合knife4j接口文档

    在项目开发过程中,web项目的前后端分离开发,APP开发,需要由前端后端工程师共同定义接口,编写接口文档,之后大家都根据这个接口文档进行开发。 什么是knife4j 简单说knif…

    技术杂谈 2023年6月21日
    096
  • tinymce上传的图片不指定宽高

    一、总结 二、tinymce上传的图片不指定宽高 转自或参考: https://blog.csdn.net/weixin_39786582/article/details/1148…

    技术杂谈 2023年5月31日
    071
  • 高企必备项目—SSM框架项目CRM客户管理系统

    首先我们来了解一下什么是CRM客户管理系统? CRM系统包括一些核心的客户关系管理业务功能,如:潜在客户、客户管理、拜访管理、商机管理、订单管理等模块,满足企业客户关系信息化的要求…

    技术杂谈 2023年7月25日
    072
  • 数据库

    建库操作 #创建数据库(默认字符集编码) create database test20210420 #创建数据库的时候指定字符集编码以及字符校验规则 create database…

    技术杂谈 2023年6月21日
    094
  • Linux系统Yum中的$releasever和$basearch变量

    Yum的配置文件中包含大量的$releasever和$basearch变量,那么他们的取值是什么呢? 为什么要折腾这个玩意呢?有点地方的网络是私有化网络,内部有大量的Linux服务…

    技术杂谈 2023年7月24日
    091
  • 设计模式之策略模式

    策略模式 在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。 在策略模式中,我们创建表示各种策略的对象和一个…

    技术杂谈 2023年5月31日
    081
  • 网络七层协议地图,报文格式一览无遗。绝对是干货,值得收藏

    从事网络工作的小伙伴们,在排查网络故障时,往往需要抓包,分析问题。所以,要对每一层的报文格式有一定的了解才行。但是,每一层报文协议众多,全部背下来是不可能的。只需要用到的再去查。 …

    技术杂谈 2023年6月21日
    0110
  • 查看核数 内存 磁盘

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    技术杂谈 2023年5月31日
    074
  • 容器内的Linux诊断工具0x.tools

    原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处。 Linux上有大量的问题诊断工具,如perf、bcc等,但这些诊断工具,虽然功能强大,但却需要很高的…

    技术杂谈 2023年7月25日
    061
  • 多线程与同步

    多线程并行执行能够大大提升程序运行效率,但是也要注意随之带来的线程间同步问题,避免竞态条件(”Race Condition”)引起的难以发现的bug。这篇总…

    技术杂谈 2023年7月23日
    069
  • 陈宏智:字节跳动自研万亿级图数据库ByteGraph及其应用与挑战

    导读: 作为一种基础的数据结构,图数据的应用场景无处不在,如社交、风控、搜广推、生物信息学中的蛋白质分析等。如何高效地对海量的图数据进行存储、查询、计算及分析,是当前业界热门的方向…

    技术杂谈 2023年7月25日
    068
  • Mysql单表访问方法,索引合并,多表连接原理,基于规则的优化,子查询优化

    参考书籍《mysql是怎&…

    技术杂谈 2023年7月25日
    062
  • fdisk、mkfs.ext4、make_ext4fs、img2simg、simg2img

    一个典型的嵌入式系统是由uboot+kernel+rootfs组成的,其中uboot和kernel都是二进制,rootfs存在文件系统。 二进制在烧录的时候比较简单,将二进制数据写…

    技术杂谈 2023年5月31日
    0102
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球