iOS 11.2 NFC-Tag随机UID

问题描述 投票:-1回答:1

使用iOS 11.2,我无法从标签中读取真正的uid。我可以从“NFCNDEFReaderSession”读取一个id,但每次扫描都会改变这个id。

func readerSession(_ session: NFCNDEFReaderSession, didDetectNDEFs messages: [NFCNDEFMessage]) {

    var uid: String = ""
    if(session.value(forKey: "_foundTags") != nil) {

        let foundTags : NSArray = session.value(forKey: "_foundTags") as! NSArray
        if(foundTags.count > 0) {

            let tag : NSObject = foundTags.firstObject  as! NSObject;
            if(tag.value(forKey: "_UID") != nil) {

我需要来自NFC-Tag的真实UID。有人想从nfc-tag获取uid。使用iOS 11.0可以读取此信息。

ios swift nfc
1个回答
0
投票

在iOS 11.2.1之前,可以通过从Session的foundTags数组中读取“_tagID”来实现。但在更新后它只返回nil。我们公司有同样的问题,我们正在考虑与苹果谈论这个问题,所以它是可能的,但它也是一个私人API调用,由于苹果指南,这是不允许的。我们的应用程序因此受到限制,我们从中删除了nfc读取,以获取我们的更新。

现在看来他们只是删除了Session的foundTags数组中的值。我认为没有技术理由说明它为什么不可能。这可能是IT安全问题。希望苹果回应这一点,我们将在明年了解更多原因。

© www.soinside.com 2019 - 2024. All rights reserved.