소프트웨어를 사용해 다양한 전자 식별자(접근, 수송, 은행 업무 등)의 정확한 가상 표현을 제공하는 소프트웨어 구조
해당 기능을 사용하면 모바일 앱을 NFC 태그처럼 사용할 수 있음
HCE 모바일 앱을 읽으려면 ISO/IEC 7816-4에 정의된 APDU 데이터 형식을 사용해야 한다.
태그가 리더기에 접촉했을 때, SELECT by AID(앱 ID) 명령어를 APDU 데이터 형식으로 전달하고 해당 태그에 지정한 AID가 있을 경우 HCE는 리더기에 데이터를 응답할 수 있다.
HCE를 읽는 리더기 앱은 다음 3가지가 필요하다.
1. AndroidManifest 설정
2. NFC 리더 모드 활성화
3. 통신 처리
onTagDiscovered 메서드는 밑에서 설명
리더 모드를 활성화 리더 모드 플래그는 다음과 같음IsoDep를 사용해 통신을 연결하고 transceive로 APDU를 보내면 태그에서 데이터를 응답
응답으로 받은 데이터는 ByteArray 형식으로 용도에 맞게 변형
태그 역할을 하는 모바일 앱
HCE 를 사용하기 위해서는 다음 3가지가 필요하다
1. AndroidManifest 설정
2. AID와 서비스 등록
3. HostApduService 구현
android:permission (NFC 사용 권한 설정)
intent-filter (안드로이드 시스템에서 APDU를 전달할 서비스를 식별하기 위해 사용)
meta-data (서비스가 받을 AID 설정)
aid-filter 에는 사용할 AID를 입력. AID는 최소 5바이트 이상이어야 한다.
문자 2개가 1바이트로 문자 1개 당 4비트(0~16)를 사용한다.
자세한 내용은 개발자 문서 참고