Emulación de tarjeta de host en Android (4.4 / KitKat y superior) con Nexus 5

Estoy tratando de emular una etiqueta NFC con mi Nexus 5 de acuerdo con este documento , pero mi servicio nunca es invocar. ¿Debería desactivar Android beam?

Me gustaría emular una etiqueta simple que contenga una url.

El lector es un Nexus 7 (2012) y he descubierto el proceso como una simple exploración de una etiqueta NFC usando Android haz en Nexus 7.

Además estoy un poco confundido sobre el nombre del filtro de ayuda. ¿Hay una lista de ellos?

Estoy seguro de que no entiendo algo. Gracias

En primer lugar (aunque esto no responde directamente a su pregunta), la forma preferida de transferir una URL entre dos dispositivos Android NFC es utilizar Android Beam (modo peer-to-peer). Android HCE (Host Card Emulation) suele estar diseñado para la emulación de aplicaciones de tarjetas inteligentes sin contacto que no sean etiquetas NFC.

¿Necesito desactivar Android Beam para utilizar Android HCE?

No, Android HCE no está influenciado por la configuración de encendido / apagado de Android Beam. En realidad, incluso si Beam está desactivado, un dispositivo NFC de Android seguirá realizando la activación de enlace de modo peer-to-peer.

Me gustaría emular una etiqueta simple que contenga una URL.

Android HCE emula las aplicaciones de tarjetas inteligentes basadas en ISO / IEC 14443-4 e ISO / IEC 7816-4. Por lo tanto, si desea emular una etiqueta NFC con esto, necesitará implementar la especificación de la Operación de etiquetas Tipo 4 del Foro NFC en su servicio HCE de Android. Las especificaciones del Foro NFC están disponibles gratuitamente en su sitio web .

Para resumir los requisitos de esta especificación:

  1. D2760000850101 registrar su servicio para la aplicación de etiqueta de tipo 4 de foro NFC AID: D2760000850101 .
  2. Su servicio necesita responder con éxito de código de estado ( 0x9000 ) a una APDU SELECT (por nombre DF) para esa AID:

     > 00 A4 04 00 07 D2760000850101 00 < 9000 
  3. Su servicio necesita responder con éxito de código de estado a una APDU SELECT (por EF ID) para el archivo de contenedor de capacidad (CC) ( E103 ):

     > 00 A4 00 0C 02 E103 < 9000 
  4. Su servicio necesita responder con el CC (o partes de él) al recibir una APDU READ BINARY (después de haber seleccionado el archivo CC):

     > 00 B0 Offset_High Offset_Low Length < <Length bytes of the CC starting at Offset> 9000 
  5. Su servicio debe responder con éxito de código de estado a una APDU SELECT (por EF ID) para el archivo NDEF (EF ID como se define en el CC):

     > 00 A4 00 0C 02 <EF ID> < 9000 
  6. Su servicio debe responder con el contenido del archivo NDEF (o partes de éste) al recibir una APDU READ BINARY (después de que se haya seleccionado el archivo NDEF):

     > 00 B0 Offset_High Offset_Low Length < <Length bytes of the NDEF file starting at Offset> 9000 

Quiero un segundo dispositivo Android para recoger automáticamente la URL.

Esa es la parte problemática y la razón por la que Beam es el camino preferido. Incluso si emula una etiqueta de Tipo 4 de Foro NFC con un dispositivo Android, si pone dos dispositivos Android en conjunto, seguirá generando un enlace peer-to-peer (incluso si Beam está apagado). Por lo tanto, el segundo dispositivo Android no detectará su tarjeta HCE emulada como una etiqueta NFC. La única manera de superar esta limitación es utilizar la API de modo Lector NFC (nueva en Android 4.4) en el segundo dispositivo. Sin embargo, en ese caso, necesitará tener una aplicación en el dispositivo receptor que esté activa en primer plano (esa es la única forma de habilitar la API del modo Reader).

  • Android nfc intent-filter para mostrar mi aplicación cuando nfc descubre una etiqueta
  • Cómo cambiar "Elegir una acción" a "Completar acción usando" en Android?
  • android nfc configuración toggle oyente
  • ¿Es SDK para NFC lector / escritor acr122u dispositivo necesario para construir la aplicación de lectura / escritura?
  • Compartir credenciales Wifi a través de etiqueta NFC sin aplicaciones especiales
  • Cómo obtener ayuda para el lector Emulación de tarjeta basada en host
  • Comunicación P2P NFC entre Galaxy S3 y ACR122
  • Bidireccional bidireccional de Android
  • Cómo probar api NFC?
  • Enrutamiento de NFC Offhost al UICC en el Nexus 5X y el Nexus 6P
  • Touch to Beam, la única forma de enviar NFC (ICS)?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.