本文介绍了CoreNFC调试无法正常工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在xcode-9上以编程方式工作CoreNFC

How programmatically work CoreNFC on xcode-9

func readerSession(_ session: NFCNDEFReaderSession, didInvalidateWithError error: Error) {
    //What I need to do here
}

func readerSession(_ session: NFCNDEFReaderSession, didDetectNDEFs messages: [NFCNDEFMessage]) {
    //What I need to do here
}

override func viewDidLoad() {
    super.viewDidLoad()

    let sessionReader = NFCNDEFReaderSession.init(delegate: self, queue: nil, invalidateAfterFirstRead: true)
    let nfcSession = NFCReaderSession.self

    let nfcTag = NFCTagCommandConfiguration.init()
    let tagType = NFCTagType(rawValue: 0)

    sessionReader.begin()

}

我想知道读取一些NFC标签需要做什么.

I want to know what I need to do for read some NFC tag.

推荐答案

有四个步骤可以使其正常工作:

There are four steps to get it working:

  1. 在Apple开发人员门户中将NFC标签权限添加到您的应用程序标识符中
  1. 将代码签名授权文件添加到您的项目并构建设置,并添加以下原始密钥和值:
  1. 将使用情况描述添加到您的Info.plist中:
  1. 实现委托并将其传递给NFCNDEFReaderSession初始化,如下所示:

import UIKit
import CoreNFC

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate, NFCNDEFReaderSessionDelegate {

    var window: UIWindow?
    var session: NFCNDEFReaderSession?

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        session = NFCNDEFReaderSession(delegate: self, queue: nil, invalidateAfterFirstRead: false)
        self.session?.begin()
        return true
    }

    func readerSession(_ session: NFCNDEFReaderSession, didInvalidateWithError error: Error) {
        print(error)
    }

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

}

这篇关于CoreNFC调试无法正常工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-14 21:59