Отсутствует необходимое право для NFCISO15693Tag customCommand.

В бета-версии iOS13. когда я попытался использовать API NFCISO15693Tag customCommandWithRequestFlag:customCommandCode:customRequestParameters:completionHandler: для отправки кода customCommand в тег, я получил ошибку:

-[NFCTagReaderSession transceive:tagUpdate:error:]:706  Error Domain=NFCError Code=2 "Missing required entitlement" UserInfo={NSLocalizedDescription=Missing required entitlement}

Я пытался:

1. Перенастройте конфиденциальность NFC.

2, добавьте конфиг в мой info.plist

<key>com.apple.developer.nfc.readersession.felica.systemcodes</key>
    <array>
        <string>12FC</string>
    </array>
<key>com.apple.developer.nfc.readersession.iso7816.select-identifiers</key>
    <array>
        <string>D2760000850101</string>
    </array>

Но ни один из них не работает для меня.

Ниже приведен мой исходный код:

func tagReaderSession(_ session: NFCTagReaderSession, didDetect tags: [NFCTag]) {
    if let st = tags.first {

    session.connect(to: st) { (error) in
        if error != nil {
            session.invalidate(errorMessage: "Connection error. Please try again.")
            return
        }
        if case let .iso15693(type5Tag) = st {

            print(type5Tag.identifier.toString())
            print(type5Tag.icSerialNumber.toString())
            print(type5Tag.isAvailable)

            type5Tag.select(requestFlags: [.address, .highDataRate]) { (selectError) in
                print("selectError")
                print(selectError)
            }

            type5Tag.customCommand(requestFlags: [.highDataRate, .address], customCommandCode: 0xB4, customRequestParameters: Data([0x02])) { (data, error) in
                print("custom command: get random number")
                print(data.toString())
                print(error)
            }
        }
    }
}


На самом деле я получаю следующую ошибку:

-[NFCTagReaderSession transceive:tagUpdate:error:]:706  Error Domain=NFCError Code=2 "Missing required entitlement" UserInfo={NSLocalizedDescription=Missing required entitlement}

ожидать 4 байта случайного числа.


person TonyYang    schedule 12.07.2019    source источник
comment
Получил ответ. пока не поддерживается в iOS13 beta3. ‹forums.developer.apple.com/thread/117860  -  person TonyYang    schedule 12.07.2019
comment
Поддержка была добавлена ​​в бета-версии 4, но я могу воспроизвести ошибку на производстве iOS 13.1.   -  person Alec O    schedule 11.10.2019