我正在研究iOS 13的新CoreNFC功能,并且正在努力使NFCTagReaderSession工作。设置权利并实例化NFCTagReaderSession和委托之后,我尝试通过调用来启动会话nfcTagReaderSession?.begin()。我的会话立即因以下错误而失效:
Error Domain=NFCError Code=2 "Missing required entitlement" UserInfo={NSLocalizedDescription=Missing required entitlement}
我在这里查看了我的权利文件的文档:https : //developer.apple.com/documentation/bundleresources/entitlements/com_apple_developer_nfc_readersession_formats
我还在Info.plist中添加了相应的“隐私-NFC扫描使用说明”。
有人让这个工作了吗?这仅仅是Xcode 11或iOS 13的问题吗?
这是我的ViewController中的代码:
import UIKit
import CoreNFC
class ViewController: UIViewController {
var nfcTagReaderSession: NFCTagReaderSession?
override func viewDidLoad() {
super.viewDidLoad()
nfcTagReaderSession = NFCTagReaderSession(pollingOption: [.iso14443, .iso15693, .iso18092], delegate: self)
nfcTagReaderSession?.begin()
print("isReady: \(nfcTagReaderSession?.isReady)")
}
}
extension ViewController: NFCTagReaderSessionDelegate {
func tagReaderSessionDidBecomeActive(_ session: NFCTagReaderSession) {
print("Tag reader did become active")
}
func tagReaderSession(_ session: NFCTagReaderSession, didInvalidateWithError error: Error) {
print("\(error)")
}
func tagReaderSession(_ session: NFCTagReaderSession, …Run Code Online (Sandbox Code Playgroud)