Saltar al contenido
Idioma: ES

¿Puede una etiqueta llevar datos que no sean NDEF?

Sí. NDEF es un convenio y no una restricción física, y muchos chips permiten acceder directamente a su memoria. Lo que pierdes es la interoperabilidad: el contenido fuera de NDEF no significa nada para ningún lector que no conozca ya tu disposición, incluido el que lleva dentro el sistema operativo.

Por qué es posible siquiera

Una etiqueta es memoria con un protocolo de acceso. NDEF es un acuerdo sobre cómo ordenar bytes dentro de esa memoria para que unos desconocidos puedan interpretarlos, y nada impide físicamente ordenarlos de otra manera.

Android expone las tecnologías subyacentes una a una, como muestra su referencia de tecnologías, así que una aplicación puede leer y escribir bloques en bruto en las familias que lo permiten, sin pasar en absoluto por la capa NDEF.

A qué renuncias

A todo lo que hace útil una etiqueta para otra persona. El sistema operativo no reconocerá el contenido, ninguna herramienta genérica lo mostrará de forma provechosa, y el software de ningún otro desarrollador hará nada con él.

Renuncias además al ecosistema de diagnóstico. Cuando algo va mal, una herramienta de lectura te dice que la etiqueta no está formateada o lleva datos desconocidos, lo cual es cierto e inútil, y estás depurando en soledad.

Para cualquier cosa que toque el público, esto es descalificador. Un cartel cuya etiqueta solo funciona con tu aplicación es un cartel que no hace nada por la gente que pasa por delante.

Cuándo es legítimo

En sistemas cerrados donde controlas los dos extremos. Tu aplicación, tus etiquetas, tus lectores, y ninguna expectativa de que nada más interactúe con ellos.

En datos binarios compactos donde el sobrecoste de NDEF de verdad no cabe, que es una restricción real en los chips más pequeños y rara en los demás.

En funciones propias de un chip que viven enteramente fuera de la zona NDEF: páginas de configuración, contadores, zonas de contraseña. Usarlas no es en realidad elegir entre NDEF y acceso en bruto, porque sencillamente no forman parte de la región NDEF.

Hacer que convivan los dos

En muchos chips puedes tener los dos. NDEF ocupa su región definida, y la memoria de fuera lleva lo que quieras.

Esta suele ser la respuesta correcta cuando te tienta el acceso en bruto. Una URL en NDEF le da a todo el mundo un resultado razonable, y tu propia aplicación encuentra los datos añadidos donde los dejó.

La etiqueta funciona entonces para los desconocidos y funciona mejor para ti, que es una posición estrictamente mejor que elegir un público. Cuesta el sobrecoste de NDEF, y ese es el precio de ser legible.

Preguntas frecuentes

¿Un teléfono mostrará algo con una etiqueta sin NDEF?

Detectará la etiqueta e informará de su tecnología, y luego dirá que no hay nada sobre lo que actuar. Para un usuario eso es idéntico a una etiqueta rota, que es el coste práctico de salirse del convenio.

¿Puedo esconder datos en una etiqueta de esta manera?

De nadie que mire, no. La memoria fuera de la región NDEF la puede leer cualquier aplicación dispuesta a leer bloques en bruto, así que esto es oscuridad y no protección. Las zonas protegidas por contraseña son otro mecanismo.

¿Todas las etiquetas permiten el acceso en bruto a la memoria?

Depende de la familia del chip y de lo que exponga la plataforma. Algunas permiten el acceso directo a bloques, otras solo a través de la capa NDEF, así que la capacidad hay que confirmarla para el chip concreto.

¿Una etiqueta con NDEF y datos en bruto sigue siendo estándar?

Sí, mientras la región NDEF esté bien formada. Los lectores usan la estructura para encontrar el contenido NDEF e ignoran el resto, que es exactamente lo que hace posible la convivencia.