Я не уверен, но ниже строки вызывает эту ошибку Session is invalidated unexpectedly
Когда я работал с CoreNFC
, я столкнулся с подобной проблемой. Исправьте это, определив как property
let nfcSession = NFCNDEFReaderSession(delegate: self, queue: DispatchQueue(label: "queueName", attributes: .concurrent), invalidateAfterFirstRead: true)
Я предлагаю вам определить nfcSession
как свойство.
var nfcSession: NFCNDEFReaderSession?
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
self.nfcSession = NFCNDEFReaderSession(delegate: self, queue: DispatchQueue.global(qos: .background), invalidateAfterFirstRead: false)
self.nfcSession?.begin()
return true
}
Обновление:
Вы можете определить свойство для iOS 11, как показано ниже.
@available(iOS 10.0, *)
var session: NFCNDEFReaderSession?