A, NDEF 형식
使用 NFCNDEFReaderSession.Delegate 为 : NFCNDEFReaderSessionDelegate
한 개체가 초기화
@property ( 강한 , 비 원자 )의 NFCNDEFReaderSession * 세션;
@property ( 강한 , 비 원자 ) ID <NFCNDEFTag> cuurentTag;
셀프 .session = [NFCNDEFReaderSession ALLOC를] initWithDelegate : 자기 큐 : 닐 invalidateAfterFirstRead : YES ]; // 읽기 전용 YES 일절 복수의 읽기, 태그 끝나지
자기 .session.alertMessage = @ "전화 근처에 카드를 놓고 카드를 읽기";
[ 셀프 .session BeginSession] 식별 풍선 팝업을 인식 시작 //
프록시 방법
- ( 무효 ) readerSession : (NFCNDEFReaderSession *) 세션 didDetectTags : (NSArray를 < __kindof ID <NFCNDEFTag >> *) API_AVAILABLE을 (IOS (13.0)) {태그
자기 .cuurentTag은 = [태그 firstObject];
}
방법은 태그를 얻을 수있다이 과정에서 다시 신분증을 호출합니다.
(2)가 카드의 내용을 읽어 취득한 카드 ID는 비어 있으며, 두 번째 방법은 다음 획득 카드 ID가 필요하다.
2.1 연결을 설정해야
[_SESSION connectToTag : 자기 .cuurentTag completionHandler ^ (NSError * _Nullable의 오차) {}];
2.2 연결 후 메서드를 호출, 당신은 카드의 내용을 얻을 수 있습니다
[태그 readNDEFWithCompletionHandler ^ (NFCNDEFMessage * ndefMessage, 오류 NSError *) {}];
3, NDEF 내용을 쓰기
3.1 연결을 설정해야
[_SESSION connectToTag : 자기 .cuurentTag completionHandler ^ (NSError * _Nullable의 오차) {}];
연결 방법 호출 후에 3.2 성공적 카드의 상태를 취득한다 : 기록 가능 여부를 판단
[ 자기 .cuurentTag queryNDEFStatusWithCompletionHandler ^ (NFCNDEFStatus 상태 NSUInteger 용량 NSError * _Nullable의 오차) {}];
당신이 쓸 수 주 상태 == NFCNDEFStatusReadWrite.
3.3 쓰기
[ 자기 .cuurentTag writeNDEF : myMessage completionHandler ^ (NSError * _Nullable의 오차) {}];
NFCPollingISO14443 NFCPollingISO15693 NFCPollingISO15693 : 두, iOS13 새로운 유형을 지원
NFCTagReaderSession를 사용합니다. 위임은 다음과 같습니다 NFCTagReaderSessionDelegate
1. 개체 초기화
자기 .session = [NFCTagReaderSession의 ALLOC]
initWithPollingOption : (NFCPollingISO14443 | NFCPollingISO15693 | NFCPollingISO15693) 대표 : 자기 큐 : dispatch_get_main_queue ()];
자기 .session.alertMessage = @ "전화 근처에 카드를 놓고 카드를 읽기";
[ 셀프 .session BeginSession] 식별 풍선 팝업을 인식 시작 //
프록시 방법
- ( 무효 ) tagReaderSession : (NFCTagReaderSession *) 세션 didDetectTags : (NSArray를 < __kindof ID <NFCTag >> *) 태그 {
자기 .cuurentTag은 = [태그 firstObject];
}
도 2는, 콘텐츠 취득 방법은 전술 한 (카드 타입은 예를 들어 다음 중 하나에서 결정)의 ID를 판독하여
경우 ( 자기 .currentTag.type == NFCTagTypeMiFare) {
ID <NFCMiFareTag> mifareTag = 자기 .currentTag asNFCMiFareTag];
*을 NSData 데이터 = mifareTag.identifier
}
사용 태그 3. 작성 방법은 특정 유형의 태그를 수를로 필요합니다 NFCMiFareTag
[mifareTag writeNDEF : ndefMsg completionHandler ^ (NSError * 에러) {}];