I have tried a sample with CoreNFC in iOS, but it fails to read the manufacturer's UID of the NFC Tag, instead it expects message content from the Tag and reads only that, Is there any way to make CoreNFC read the NFC Tag's UID?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
Edit: Updates to CoreNFC on iOS 13 mean you can now read most UIDs with compatible iPhones. To do so: see https://stackoverflow.com/a/57993069/3959708
It is possible to read the UID of a tag, but it will not be able to be submitted to the App Store because the API is private.
- (void) readerSession:(nonnull NFCNDEFReaderSession *)session didDetectNDEFs:(nonnull NSArray<NFCNDEFMessage *> *)messages {
NSArray *foundTags = [session valueForKey:@"_foundTags"];
NSObject *tag = foundTags[0];
NSData *uid = [tag valueForKey:@"_tagID"];
}
This thread has more info: https://github.com/hansemannn/iOS11-NFC-Example/issues/16