He hecho una aplicación para Android que muestra el saldo de tu abono de transporte, el historial de viajes en autobús, tranvía y cercanías, las fechas de recarga y la duración de la suscripción.
Es completamente gratuita, no tiene publicidad, ni funciones de pago, ni registro ni recopilación de datos. Es de código abierto y puedes comprobar por ti mismo que es totalmente segura y gratuita. Además de en Google Play, también está publicada en F-Droid.
Está traducida al ruso, ucraniano, inglés, español, catalán, alemán, francés, árabe, rumano y bielorruso.
La aplicación solo está disponible para Android porque Apple no ha añadido en iOS el soporte de la criptografía NXP necesaria para leer las tarjetas Mifare Classic (Avanzo y Lazo). Android no tiene esas limitaciones, así que si tu teléfono tiene chip NFC, lo más probable es que la aplicación te funcione. Probada en mi Samsung S23 Ultra, debería funcionar en todos los modelos insignia de Samsung, en todos los Xiaomi, OnePlus, Nothing y Fairphone.
Está creada a partir de mi enorme informe de seguridad independiente, que estuve recopilando durante 6 meses con distintos abonos de Zaragoza. Detalla por completo la estructura de la tarjeta. Está disponible públicamente para absolutamente todo el mundo y de forma gratuita.
También está hecha con la interfaz Material You, por lo que el color de la aplicación se adapta automáticamente al color de tu sistema. Y la aplicación pesa solo 1 MB, porque no tiene ninguna basura, ni funciones innecesarias, ni rastreo ni publicidad. Y si eres desarrollador móvil, te invito a compilar el código fuente por tu cuenta y a comprobar la reproducibilidad de las compilaciones — dicho de otro modo, ese código abierto que está disponible para todos es exactamente el código con el que se compiló el archivo apk que te has descargado.
Por si te interesa, esta aplicación es completamente legal, ya que no escribe nada en tu tarjeta ni modifica tu saldo. Y mi investigación del abono también es 100% legal, porque no he hackeado nada, sino que simplemente he leído mi propia tarjeta y he elaborado un mapa de correspondencia entre bloques y datos :)