iOS 11 CoreNFC Как можно обрабатывать ошибки чтения?

CoreNFC имеет метод делегата для ошибок:

//Called when the NFC session invalidates with an error.
- (void)readerSession:(nonnull NFCNDEFReaderSession *)session didInvalidateWithError:(nonnull NSError *)error {
}

Документация ( https://developer.apple.com/documentation/corenfc) показывает в разделе ошибок ( https://developer.apple.com/documentation/corenfc/nfcreadererror) несколько кодов ошибок.

Я хочу иметь возможность прочитать ошибку, возникшую в сеансе чтения, и поместить ее в оператор switch, чтобы я мог выводить другое сообщение для каждой ошибки. Я не могу понять, как получить эти сообщения об ошибках из функции. Я предполагаю, что я что-то упустил по основной цели c при наложении чего-либо.

Я надеюсь получить что-то вроде этого.

switch (error) {
        case NFCReaderErrorSecurityViolation:
            //Do Stuff
            break;
        case NFCReaderErrorUnsupportedFeature:
            //NFC is unsupported.
            break;
        //ETC
        default:
            break;
    }

Как мне это получить?

1 ответ

Решение

Использование error.code в блоке переключателей следующим образом,

switch (error.code) {
    case NFCReaderErrorSecurityViolation:
        //Do Stuff
        break;
    case NFCReaderErrorUnsupportedFeature:
        //NFC is unsupported.
        break;
    //ETC
    default:
        break;
}
Другие вопросы по тегам