Я пытаюсь создать читатель NF C с SwiftUI на IoS 13.1.3, но все еще с NFCError Code = 202 «Сеанс неожиданно аннулирован» Конечно, NF C Чтение тегов было включено, а также описание в файле конфиденциальности. Упомянутый вопрос имеет ту же проблему, но не решена ни одним из предложенных ответов. Вот код:
import Foundation
import Combine
import CoreNFC
final class CardReader: NSObject, NFCNDEFReaderSessionDelegate {
var readerSession: NFCNDEFReaderSession?
func readerSession(_ session: NFCNDEFReaderSession, didInvalidateWithError error: Error) {
print("Invalidate \(error)")
}
func readerSession(_ session: NFCNDEFReaderSession, didDetectNDEFs messages: [NFCNDEFMessage]) {
print("reader session")
}
func startScan(){
readerSession = NFCNDEFReaderSession(delegate: self,
queue: DispatchQueue(label:"queueName", attributes: .concurrent), invalidateAfterFirstRead: true)
readerSession?.alertMessage = "Hold your iPhone near an NFC card."
readerSession?.begin()
}
}
и это называется так:
struct DefaultView: View {
var baseTag: CardReader = CardReader()
var body: some View {
VStack {
Button(action: {
self.baseTag.startScan()
}) {
Text("NFC Scan")
}
}
}
}
Ошибка следующая
Invalidate Error Domain=NFCError Code=202 "Session invalidated unexpectedly" UserInfo={NSLocalizedDescription=Session invalidated unexpectedly}