3.8 KiB
3.8 KiB
TODO
Internacionalización AAA
- Diseñar una base de internacionalización profesional con ficheros ARB separados por idioma.
- Permitir que el usuario cambie el idioma manualmente desde la aplicación, sin depender únicamente del idioma del sistema.
- Añadir traducción inicial español/inglés para el shell, navegación, timer de sueño y selector de idioma.
- Añadir soporte inicial para un conjunto amplio de idiomas muy hablados: inglés, español, chino, hindi, árabe, portugués, francés, ruso, alemán, japonés, indonesio, bengalí e italiano.
- Ejecutar escaneo UTF-8 sobre ARB/código tocado y corregir corrupciones visibles en los textos migrados.
- Validar no solo el guardado UTF-8 en código, sino también el render real en la aplicación para acentos, ñ, signos, alfabetos no latinos y direcciones RTL.
- Repasar absolutamente todos los literales de la aplicación en todas las pantallas, componentes, servicios con mensajes visibles y notificaciones.
- Soportar formatos locales de fecha, hora, números y duración usando helpers centralizados.
- Resolver correctamente singular/plural y variantes por cantidad, por ejemplo
1 emisoravs2 emisoras. - Revisar profesionalmente todas las traducciones nuevas con hablantes nativos o servicio especializado antes de considerarlas definitivas.
- Preparar traducciones adicionales si se decide ampliar más allá del conjunto inicial.
- Revisar la aplicación de Farolero como referencia para detectar el conjunto de idiomas que nos interesa mantener.
- Verificar que no queda ningún literal hardcodeado fuera del sistema de traducciones.
UX y accesibilidad visual
- Revisar los paneles informativos superiores de cada pantalla: recuperar márgenes internos elegantes para que el texto no quede pegado a los bordes.
- Añadir comportamiento adaptativo en el header premium para escalas de texto grandes y pantallas estrechas.
- Probar la aplicación con escalas de texto grandes/muy grandes del sistema en dispositivo real o golden tests.
- Diseñar una solución elegante para textos largos en todos los paneles secundarios: reflow, límites razonables, scroll, wraps controlados y jerarquías que mantengan la estética AAA.
Grabaciones
- Añadir en Ajustes un acceso elegante para abrir la carpeta de grabaciones con el gestor de ficheros del sistema mediante intent.
- Añadir configuración de tamaño máximo de fichero de grabación; valor por defecto: 500 MB.
- Detener automáticamente la grabación si se para o pausa la reproducción.
- Detener automáticamente la grabación si se cambia de emisora.
- Probar en Android real que el intent de carpeta funciona con rutas internas y rutas escogidas por el usuario.
Búsqueda de emisoras
- Añadir filtro de calidad mínima de reproducción en kbps en el buscador de emisoras.
Favoritos
- Revisar el sistema de guardado de favoritos en instalaciones nuevas y migradas: inicialización de SQLite, creación de ruta/base de datos, migraciones de columnas y refresco de estado tras guardar. Reporte: en un móvil no se están guardando favoritos.
- Añadir tests de regresión para favoritos en base de datos real/migrada, incluyendo esquemas antiguos y primera instalación limpia.
Agrupaciones de favoritos
- Permitir crear listas de favoritos con nombre corto configurable por el usuario desde Ajustes.
- Mantener siempre un grupo interno por defecto traducible llamado "Sin asignar", no editable y no borrable.
- Gestionar desde la vista Favoritos qué emisoras pertenecen a cada agrupación/lista.
- Diseñar migración SQLite base para asociar favoritos existentes al grupo "Sin asignar" sin perder datos.
- Completar UI en Ajustes para crear, editar y borrar listas de favoritos.
- Completar UI en Favoritos para mover emisoras entre listas.