removed code

This commit is contained in:
Pablo
2026-03-09 22:23:07 +01:00
parent 545d879a9c
commit a091aea027
2721 changed files with 1454 additions and 140054 deletions
+175
View File
@@ -0,0 +1,175 @@
# 🔧 Actualización - Debug de Movimientos
## Problema Reportado
Los movimientos no se estaban mostrando en la aplicación, solo el número de tarjeta y el saldo.
## ✅ Cambios Implementados
### 1. Mejorado el Manejo de Errores
- **Antes**: Los errores al leer movimientos se "tragaban" silenciosamente
- **Ahora**: Se capturan y muestran en la UI para debugging
### 2. Comandos APDU Múltiples
He implementado 3 intentos diferentes para leer los registros de eventos:
```kotlin
// Intento 1: SFI 0x08 (file 8)
0x80 0x2B [record] 0x45 0x1D
// Intento 2: SFI 0x07
0x80 0x2B [record] 0x3D 0x1D
// Intento 3: Comando simplificado
0x80 0x2B [record] 0x05 0x1D
```
Esto aumenta las posibilidades de éxito con diferentes implementaciones de tarjetas Calypso.
### 3. Status Words Flexibles
Ahora la app reconoce:
- `9000` - Éxito
- `6A83` - Registro no encontrado (normal si no hay movimientos)
- `6A82` - Archivo no encontrado (tarjeta sin historial)
### 4. UI con Información de Debug
Ahora verás uno de estos escenarios:
#### Caso A: Movimientos Encontrados ✅
```
┌─────────────────────────────┐
│ Últimos Movimientos │
│ │
│ Carga +10.00 € │
│ 15/03/2026 14:30 │
│ Línea 12 │
│ ... │
└─────────────────────────────┘
```
#### Caso B: Sin Movimientos (con debug) 🔍
```
┌─────────────────────────────┐
│ Últimos Movimientos │
│ │
│ No se pudieron leer los │
│ movimientos │
│ │
│ Debug: Registro no │
│ encontrado │
└─────────────────────────────┘
```
## 🧪 Qué Probar Ahora
1. **Reinstala la app** con el nuevo APK:
```
app\build\outputs\apk\debug\app-debug.apk
```
2. **Lee tu tarjeta nuevamente**
3. **Observa la sección "Últimos Movimientos"**:
- Si ves movimientos: ¡Perfecto! ✅
- Si ves "No se pudieron leer...": Lee el mensaje de debug
## 📊 Posibles Resultados
### Resultado 1: Funciona Ahora ✅
Si los movimientos aparecen, significa que uno de los nuevos comandos funcionó.
### Resultado 2: "Debug: Registro no encontrado" ⚠️
**Significado**: La tarjeta no tiene registros de eventos disponibles para leer.
**Posibles causas**:
- La tarjeta es nueva y no tiene movimientos todavía
- Los registros de eventos están en un archivo diferente
- La tarjeta Millennium usa un formato propietario diferente
**Solución**: Es normal. Algunas tarjetas no almacenan historial localmente.
### Resultado 3: Otro mensaje de error 🔍
Si ves otro error, por favor compártelo conmigo para investigar más.
## 🔬 Próximos Pasos según el Resultado
### Si Funciona:
- ✅ Ya está todo listo
- Puedes usar la app normalmente
- Los movimientos se mostrarán cuando estén disponibles
### Si No Funciona:
Necesitaré más información:
1. **¿Qué dice el mensaje de debug?**
- El texto exacto que aparece en rojo
2. **¿Es una tarjeta usada o nueva?**
- Si es nueva, puede no tener historial
3. **¿Puedes leer movimientos en la app oficial de iTranvias?**
- Esto confirmaría que los datos existen
## 💡 Información Técnica
### Por qué pueden faltar los movimientos:
1. **Formato Propietario**: Algunas ciudades usan extensiones propietarias del formato Calypso
2. **Archivo Diferente**: Los eventos pueden estar en un SFI (Short File Identifier) diferente
3. **Sin Historial Local**: Algunas tarjetas no almacenan historial en el chip, solo en servidores
4. **Encriptación**: Algunos campos pueden estar encriptados y requerir claves específicas
### Comandos que estamos probando:
Las tarjetas Calypso usan el comando READ RECORD (`0x2B`) con diferentes parámetros:
- **P1**: Número de registro (1, 2, 3)
- **P2**: SFI × 8 + modo (ej: `0x45` = SFI 8, modo 5)
- **Le**: Longitud esperada (`0x1D` = 29 bytes)
Estamos probando los SFI más comunes:
- SFI 7 (típico para eventos de validación)
- SFI 8 (típico para log de transacciones)
- Modo directo sin SFI
## 📱 Instalación del APK Actualizado
El nuevo APK está en:
```
app\build\outputs\apk\debug\app-debug.apk
```
Para instalar:
1. Transfiere el APK a tu teléfono
2. Abre el APK y permite la instalación
3. Si ya tenías la app instalada, se actualizará automáticamente
## ✅ Build Exitoso
```
BUILD SUCCESSFUL ✅
35 tareas ejecutadas
7 cambios aplicados
```
---
## 🎯 Resumen
He mejorado significativamente la lectura de movimientos:
- ✅ Múltiples comandos APDU (3 intentos)
- ✅ Mejor manejo de errores
- ✅ Información de debug visible
- ✅ Status words más flexibles
**Próximo paso**: Prueba la app actualizada y cuéntame qué mensaje ves en la sección de movimientos.
---
**Actualización**: 9 de Marzo, 2026
**Versión**: 1.1 (Debug Build)
**Estado**: Listo para probar