Notice
Recent Posts
Recent Comments
Link
투케이2K
617. (ios/swift5) [기능 정리] NFC 기능을 사용하기 위한 Core NFC 설명 및 기능 사용 정리 본문
[개발 환경 설정]
개발 툴 : XCODE
개발 언어 : SWIFT5
[설명 정리]
// --------------------------------------------------------------------------------------
[개발 및 테스트 환경]
// --------------------------------------------------------------------------------------
- 언어 : Swift
- 개발 툴 : Xcode
- 기술 구분 : Core NFC
// --------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------
[설명 정리]
// --------------------------------------------------------------------------------------
1. Core NFC 은 NFC 태그를 감지하고, NDEF 데이터가 포함된 메시지를 읽고, 쓰기를 지원해주는 프레임워크입니다
2. Core NFC 를 사용하면 NFC 데이터 교환 형식(NDEF)의 데이터가 포함된 유형 1~5의 근거리 무선 통신(NFC) 태그를 읽을 수 있습니다
>> ISO 7816, ISO 15693, FeliCa™, MIFARE® 태그와 같은 프로토콜별 태그와 상호작용할 수 있습니다
3. Core NFC 사용 가능 지원 범위 :
>> iOS 11.0 이상
>> 아이패드OS 11.0+
>> 맥 카탈리스트 13.1+
4. Core NFC 사용을 위한 필수 설정 :
>> 프로젝트 대상의 Capabilities 탭에서 Near Field Communication Tag Reading 추가
>> Info.plist 파일에서 NFCReaderUsageDescription 추가 및 NFC 사용을 위한 설명 작성
5. Reader sessions 관련 정리 (NFC 태그를 스캔하고 감지) :
>> class NFCNDEFReaderSession : NFC 데이터 교환 형식(NDEF) 태그를 감지하기 위한 리더 세션입니다.
>> class NFCTagReaderSession : ISO7816, ISO15693, FeliCa, MIFARE 태그를 감지하기 위한 리더 세션입니다.
>> class NFCVASReaderSession : 부가가치 서비스(VAS) 태그를 처리하기 위한 독자 세션입니다.
>> class NFCReaderSession : NFC 태그를 감지하기 위한 리더 세션을 나타내는 추상 기본 클래스입니다.
>> protocol NFCReaderSessionProtocol : 독자 세션과 상호작용하기 위한 일반 인터페이스입니다.
>> class NFCReaderSession : NFC 태그를 감지하기 위한 리더 세션을 나타내는 추상 기본 클래스입니다.
>> Near Field Communication Tag Reader Session Formats Entitlement : 앱이 읽을 수 있는 근거리 무선 통신 데이터 형식입니다.
6. Tag types 관련 정리 (적절한 태그 유형 인터페이스를 사용하여 태그 데이터를 읽고 쓰기 가능한 태그에 데이터를 저장) :
>> protocol NFCISO7816Tag : ISO 7816 태그와 상호작용하기 위한 인터페이스입니다.
>> protocol NFCISO15693Tag : ISO 15693 태그와 상호작용하기 위한 인터페이스입니다.
>> protocol NFCFeliCaTag : FeliCa™ 태그와 상호작용하기 위한 인터페이스입니다.
>> protocol NFCMiFareTag : MIFARE® 태그와 상호작용하기 위한 인터페이스입니다.
>> protocol NFCNDEFTag : NDEF 태그와 상호작용하기 위한 인터페이스입니다.
>> enum NFCTag : NFC 태그 객체를 나타내는 객체입니다.
>> class NFCTagCommandConfiguration : NFC 태그 명령의 구성을 정의하는 데 사용하는 매개변수 집합입니다.
7. NDEF messages and payloads 관련 정리 (메시지 및 페이로드) :
>> class NFCNDEFMessage : 페이로드 레코드 배열로 구성된 NFC NDEF 메시지입니다.
>> class NFCNDEFPayload : NFC NDEF 메시지의 페이로드 레코드입니다.
8. Card sessions 관련 정리 (카드 세션) :
>> class CardSession : ISO 7816 카드 에뮬레이션 세션입니다.
>> class NFCPresentmentIntentAssertion : 앱이 장치의 비접촉식 기능만을 사용하려는 의도를 나타내는 객체입니다.
9. NFC window scenes 관련 정리 :
>> protocol NFCWindowSceneDelegate : NFC 관련 이벤트에 대해 앱의 사용자 인터페이스에 알리는 프로토콜입니다.
>> enum NFCWindowSceneEvent : 앱에서 사용자 인터페이스를 업데이트하는 데 사용하는 NFC 관련 이벤트입니다.
10. Error 에러 표시 관련 정리 :
>> enum Code : 리더 세션 및 태그 오류 코드.
>> struct NFCReaderError : 독자 세션이나 태그에 문제가 있음을 나타내는 오류 유형입니다.
>> let NFCErrorDomain: String : Core NFC API와 관련된 오류에 대한 도메인입니다.
>> let NFCTagResponseUnexpectedLengthErrorKey: String : 잘못된 수신 응답 패킷 길이를 나타내는 사용자 정보 사전 키입니다.
// --------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------
[참고 사이트]
// --------------------------------------------------------------------------------------
[애플 공식 사이트 설명]
https://developer.apple.com/documentation/corenfc
[프로젝트 설정]
https://blog.naver.com/kkh0977/223705186026
[에러 코드 확인]
https://developer.apple.com/documentation/corenfc/nfcreadererror-swift.struct/code
// --------------------------------------------------------------------------------------
반응형
'IOS' 카테고리의 다른 글
Comments