Bonjour @tous,
J’ai besoin de récupérer l’UID d’un tag NFC et je ne trouve pas comment faire. J’arrive à récupérer le texte par « payload » mais impossible de lire l’UID.
Merci pour votre aide,
Eric
Voici le code :
import SwiftUI
import CoreNFC
@available(iOS 13.0, *)
public class NFCReader: NSObject, ObservableObject, NFCNDEFReaderSessionDelegate {
public var startAlert = "Approchez votre iPhone du tag NFC."
public var endAlert = ""
public var msg = "Scannez pour lire ou modifiez ici pour écrire..."
public var raw = "Données brutes disponibles après analyse."
public var session: NFCNDEFReaderSession?
public func read() {
guard NFCNDEFReaderSession.readingAvailable else {
print("Error")
return
}
session = NFCNDEFReaderSession(delegate: self, queue: nil, invalidateAfterFirstRead: true)
session?.alertMessage = self.startAlert
session?.begin()
}
public func readerSession(_ session: NFCNDEFReaderSession, didDetectNDEFs messages: [NFCNDEFMessage]) {
print("New NFC Tag detected:")
for message in messages {
for record in message.records {
print("Type name: \(record.typeNameFormat)")
print("identifier: \(record.payload)")
print("Description: \(record.description)")
print("Identifier: \(record.identifier)")
}
}
}
public func readerSessionDidBecomeActive(_ session: NFCNDEFReaderSession) {
}
public func readerSession(_ session: NFCNDEFReaderSession, didInvalidateWithError error: Error) {
print("La session a été invalidée avec une erreur: \(error) ")
self.session = nil
}
}