Address
304 North Cardinal St.
Dorchester Center, MA 02124
Work Hours
Monday to Friday: 7AM - 7PM
Weekend: 10AM - 5PM
Address
304 North Cardinal St.
Dorchester Center, MA 02124
Work Hours
Monday to Friday: 7AM - 7PM
Weekend: 10AM - 5PM
你的iPhone其实是个”扫描仪”? 当你在便利店看到别人用手机”滴”一下完成支付,在地铁站用手机刷闸机进站时,有没有想过自己的iPhone也能做到?藏在手机背后的神秘技术——NFC,正在悄悄改变我们的生活。今天,我们就来揭开它的面纱。 认识这个”隐形技能” 从iPhone 7开
当你在便利店看到别人用手机”滴”一下完成支付,在地铁站用手机刷闸机进站时,有没有想过自己的iPhone也能做到?藏在手机背后的神秘技术——NFC,正在悄悄改变我们的生活。今天,我们就来揭开它的面纱。
从iPhone 7开始,苹果就为设备装上了NFC芯片,但就像被封印的魔法,直到iOS 13系统才向开发者开放完整权限。现在的iPhone不仅能读取:
想自己开发NFC应用?先做好这些准备:
核心代码其实比想象中简单:
// 1. 导入CoreNFC框架
import CoreNFC
// 2. 创建会话管理器
var nfcSession: NFCNDEFReaderSession?
// 3. 启动扫描会话
func startScan() {
nfcSession = NFCNDEFReaderSession(delegate: self, queue: nil, invalidateAfterFirstRead: false)
nfcSession?.begin()
}
// 4. 实现代理方法
func readerSession(_ session: NFCNDEFReaderSession, didDetectNDEFs messages: [NFCNDEFMessage]) {
for message in messages {
for record in message.records {
let payload = String(data: record.payload, encoding: .utf8)
print("读取到数据:(payload ?? "")")
}
}
}
// 5. 处理异常情况
func readerSession(_ session: NFCNDEFReaderSession, didInvalidateWithError error: Error) {
print("会话异常终止:(error.localizedDescription)")
}
小编观点:与其自己造轮子,不如试试现成的开源库(比如Core NFC Helper)。开发时记得给标签加个”身份证”——唯一的NDEF格式标识,否则系统会拒绝读取。下次看到支持NFC的物体,不妨掏出手机试试,说不定就能解锁隐藏功能!