作者:大男孩小男淫 | 来源:互联网 | 2023-01-21 10:51
如何检测iPhone是否能够使用核心NFC框架提供的NFC芯片?
我现在知道它只适用于iPhone 7和7 plus但我不想硬编码硬件字符串标识符,因为我不知道将来会出现什么设备.
1> Paulw11..:
您可以使用readingAvailable
class属性:
if NFCNDEFReaderSession.readingAvailable {
// Set up the NFC session
} else {
// Provide fallback option
}
2> Legonaftik..:
iOS 12更新:
1)如果您只想为iPhone 7和更新型号运行您的应用程序,您可以在Info.plist
以下位置添加NFC要求:
UIRequiredDeviceCapabilities
// ... your restrictions
nfc
有了这个要求,只有具有NFC功能的设备才能从App Store下载我们的应用程序.
2)对于iPhone 7以上的iPhone以及iPad支持,您还必须检查是否Core NFC
可用,因为它们不包含在这些设备中.这就是为什么你应该Core NFC
使用弱链接链接框架:
然后检查Core NFC
代码中的可用性:
var isNFCAvailable: Bool {
if NSClassFromString("NFCNDEFReaderSession") == nil { return false }
return NFCNDEFReaderSession.readingAvailable
}
如果isNFCAvailable
返回,true
则可以使用提供的所有API,Core NFC
而无需担心应用程序崩溃.