iOS 11 CoreNFC如何处理读数错误?

时间:2017-08-28 04:06:57

标签: ios objective-c iphone xcode core-nfc

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 个答案:

答案 0 :(得分:1)

在开关块中使用error.code,如下所示,

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