Skip to content

Releases: DevNaranjo/El-Piedrero

El Piedrero v1.0.1

Choose a tag to compare

@DevNaranjo DevNaranjo released this 05 Sep 16:49

🏷️ El Piedrero v1.0.1 — Parche de Estabilidad y Accesibilidad

Esta versión de mantenimiento (v1.0.1, versionCode = 2) resuelve detalles clave de usabilidad, audio y seguridad en mesa reportados tras el lanzamiento inicial.


✨ Novedades y Correcciones

  • 🃏 "Cartas a la Mesa" exclusivo del repartidor: En partidas en red, el botón y el diálogo de recuento de las 4 cartas iniciales ahora solo le aparecen al jugador que reparte la mano, evitando confusiones en los demás dispositivos.
  • 🔊 Prioridad y continuidad sonora ("¡Buenas!" y "¡Últimas!"): Se blindó la cola de reproducción para que el aviso de ¡Buenas! suene íntegro sin ser cancelado si la mano entra inmediatamente en el último reparto (¡Últimas!).
  • 👁️ Opciones de Accesibilidad de Fuente: Se integró un selector de tamaño de texto en el diálogo de ajustes (Normal 100%, Grande +12% y Extra +25%) con persistencia local. Los botones de cantos y marcadores adaptan su tamaño dinámicamente sin romper la cuadrícula ni desalinearse.
  • ↩️ Botón Deshacer al terminar/ganar partida: Si una partida finaliza por un toque involuntario o erróneo, ahora puedes pulsar "Deshacer última jugada" directamente desde la ventana de victoria. El tanteo, el ganador, las victorias acumuladas y el historial se restauran limpiamente al instante anterior.
  • 🔒 Candado restaurado en multijugador: Se bloquea de forma estricta la edición de piedras del equipo rival en partidas Wi-Fi/QR tanto para anfitriones como para invitados, mostrando el candado 🔒 y la etiqueta "Equipo Rival".

📲 Instalación y Verificación

  1. Descarga el archivo app-release.apk adjunto en los assets de esta release.
  2. Si actualizas desde la v1.0, instálalo directamente sobre la aplicación existente (conserva tu historial y configuración).
  3. Resumen criptográfico oficial:
    • SHA-256 (app-release.apk): D0DA40FF527421CB67C485C2C42FA456CA1A84093914F9D242E7F7A3DBBD818A

El Piedrero v1.0

Choose a tag to compare

@DevNaranjo DevNaranjo released this 05 Sep 14:42

📱🃏 El Piedrero — Versión 1.0-stable (Build 1) 🪨✨

¡Presento el lanzamiento oficial de la versión v1.0-stable de El Piedrero! Esta versión representa el estado base definitivo y estable para llevar el tanteo de la tradicional Ronda Canaria, tanto si juegas con un único dispositivo en el centro de la mesa como si sincronizas varios teléfonos mediante Wi-Fi local y código QR (100% offline).


🌟 Novedades Destacadas

🃏 Módulo Oficial de "Cartas a la Mesa"

  • Diálogo Interactivo: He integrado las ilustraciones de las 4 cartas oficiales de la baraja española para registrar de forma visual las cartas que coinciden con el orden de reparto.
  • Cómputo Automático de Piedras: Suma automática de piedras por coincidencia y selector de "¿Bien dada?" (+1 piedra para el repartidor si no se repite ninguna carta).
  • Aparición Exclusiva en el 1.ᵉʳ Reparto:
    • El diálogo se abre automáticamente en el primer reparto de cada mano con protección frente a transiciones de pantalla.
    • Botón directo "🃏 Cartas a la Mesa (1.ᵉʳ Reparto)" en el panel de control de reparto para consultar o abrir la mesa en cualquier momento durante dicho reparto (oculto en los repartos 2 y 3).

👑 Gestión de Líderes Rivales en Multijugador (4, 6 y 8 Jugadores)

  • Como anfitrión, ahora puedes designar a un miembro de los equipos rivales como Líder 👑.
  • Los líderes cuentan con permisos delegados para cambiar el repartidor, gestionar las cartas a la mesa y aplicar el recuento final de cartas, lo que agiliza la partida sin que el anfitrión tenga que estar manipulando el marcador en todo momento.

🔊 Optimización de Audio y Smart TV (TV Cast)

  • Búfer de Audio Aumentado: Mayor almacenamiento en memoria para evitar micro-cortes y pausas en la música de fondo al proyectar la pantalla hacia Smart TVs.
  • Hilo Prioritario de Audio: Asignación de prioridad en tiempo real (Process.setThreadPriority) al reproductor para evitar pérdidas de ciclos de CPU durante el envío de pantalla.
  • Bitrate Eficiente: Estandarización de las pistas de música a 128 kbps estéreo constante (44.1 kHz).

🔄 Mejoras de Navegación y Flujo Local

  • Al concluir una partida en modo Local, la pantalla de victoria incluye la opción directa "Volver al Menú", limpiando el estado guardado y volviendo directamente a la selección de modos.

📝 Pulido de Textos y Gramática

  • Corrección de concordancia en singular ("ha coincidido la carta X") y plural ("han coincidido las cartas X, Y").
  • Ajuste del mensaje explicativo de descarte cuando no se repite ninguna carta.

📦 Información del Binario

  • Archivo: El-Piedrero-v1.0-stable.apk
  • Versión: 1.0-stable
  • VersionCode: 1
  • Compatibilidad: Android 7.0 (API 24) o superior
  • SHA-256: 061E365E399B6EB6009F44901D19F71AC04BF7FA9F98F14ACD75448AF0187124
  • Firma: Certificado oficial de Release de DevNaranjo

El Piedrero v1.0-beta.8

Pre-release

Choose a tag to compare

@DevNaranjo DevNaranjo released this 05 Sep 09:50

El Piedrero v1.0.8 📱🃏🪨

Esta versión corrige un problema crítico de sincronización de piedras en red local que afectaba a los clientes invitados en dispositivos Android físicos, asegurando que cualquier jugador en la mesa pueda interactuar con el marcador en tiempo real sin interrupciones.


🚀 Novedades y Correcciones

  • 🪨 Corrección Crítica de Puntuación en Dispositivos Físicos (Invitado / Jugador B):
    • Se solventó la incidencia en dispositivos Android reales donde las pulsaciones de piedras y cantos de los clientes invitados no se transmitían al anfitrión.
    • Todas las operaciones de red de escritura y vaciado (flush) en los sockets TCP se ejecutan de manera forzada bajo Dispatchers.IO, eliminando excepciones NetworkOnMainThreadException provocadas por el hilo principal de la interfaz de usuario.
  • Desbloqueo Inmediato de Sockets TCP:
    • Reordenado el ciclo de cierre en disconnectInternal: el socket subyacente se cierra antes de liberar los flujos de lectura (reader.close()), desbloqueando instantáneamente cualquier hilo a la espera de paquetes entrantes.
  • 📱 Aislamiento de Rol y Enrutamiento en Cliente (ScoreViewModel):
    • Se garantiza el reseteo de banderas isHost = false y isLocalGame = false al unirse a una sala, transmitiendo todas las modificaciones de tanteo al servidor del anfitrión.
  • 🧪 Batería de Pruebas Unitarias al 100%:
    • Validación integral en MultiplayerStoneModificationTest.kt cubriendo partidas de 2, 3, 4, 6 y 8 jugadores con sincronización bidireccional y reconexión.

📦 Verificación de Integridad del APK

  • Fichero: ElPiedrero_v1.0.8.apk
  • Tamaño: 31.9 MB (31,926,045 bytes)
  • SHA-256:
    3826BA0DECDB9AFC4075137F1266F5582688F277AF3C1D69D407EDA211B0E9AF
    

El Piedrero v1.0-beta.7

Pre-release

Choose a tag to compare

@DevNaranjo DevNaranjo released this 04 Sep 20:43

🃏 El Piedrero — v1.0.7 (04/09/2026 - Patch 2) — 🪨

Esta versión v1.0.7 resuelve de manera integral el problema de sincronización y modificación de piedras en partidas multijugador, asegurando que tanto el anfitrión como los jugadores invitados puedan sumar y restar piedras y declarar cantos en tiempo real para sus respectivos equipos en mesas de 2, 3, 4, 6 y 8 jugadores.


🚀 Novedades y Correcciones Destacadas

🪨 Puntuación Multijugador Bidireccional

  • Control total para clientes invitados: Se solventa el bloqueo que impedía a los jugadores que se unían a una sala sumar o modificar las piedras de su equipo.
  • Resolución dinámica de equipos: El sistema asigna y reconoce automáticamente el equipo de cada jugador (getEffectiveLocalTeam()), garantizando que cada participante controle únicamente las piedras de su equipo sin interferencias ni bloqueos cruzados en salas de 2 (1v1), 3 (tríos), 4 (2x2), 6 (3x2) y 8 jugadores (4x2).
  • Compatibilidad de roles anfitrión/invitado: Funcionamiento verificado independientemente de quién cree la sala y quién se una.

📶 Resiliencia de Red Local y Hotspot Wi-Fi

  • Tolerancia a desfase horario: Eliminado el descarte de tramas por diferencia en el reloj interno entre teléfonos al jugar mediante zona Wi-Fi portátil o redes locales.
  • Optimización de secuencias sobre TCP: Supresión del descarte redundante de paquetes por número de secuencia que entraba en conflicto con los pings de heartbeat, garantizando que cada pulsación de piedra se aplique de inmediato.
  • Aislamiento de estado en cliente: Reinicio estricto de banderas (isHost = false e isLocalGame = false) al escanear el QR para canalizar todos los eventos directamente al socket del anfitrión.

🎛️ Personalización de Distribución de Botones

  • Reorganización a medida: Nueva pantalla accesible desde los ajustes del marcador ("Cambiar Distribución") que permite colocar los botones de cantos y jugadas en el orden preferido por el usuario, con persistencia offline.

🃏 Gestión Dinámica de Reparto

  • Indicador visual de repartidor: Detección y anuncio en pantalla del jugador encargado de dar las cartas y del siguiente repartidor al completar cada ciclo de manos.

🔊 Audio y Transmisión a Pantallas

  • Música ambiental estable: Solución a la interrupción de la música de fondo tras reproducir audios de cantos, Buenas o Victoria durante la proyección en Smart TV / Cast.

🧪 Pruebas Automatizadas y Estabilidad

  • 18 Pruebas Unitarias de Integración Multijugador (MultiplayerStoneModificationTest.kt): Cobertura exhaustiva verificando:
    • 2 jugadores (1v1) con roles alternados de anfitrión/invitado.
    • Mesas de 3, 4, 6 y 8 jugadores con rotación de equipos en reserva.
    • Difusión y replicación de GameState en tiempo real a todos los clientes.
    • Secuencias consecutivas de sumas y restas de piedras (+1, +2, Majo, -1, Ronda, -2).
    • Reconexión manteniendo el asiento asignado y reversión segura de jugadas (UNDO_LAST_MOVE).

📦 Archivos del Release

Archivo Tipo Tamaño
ElPiedrero_v1.0.7.apk Instalador APK (Release optimizado con R8) ~31.9 MB
Código Fuente (.zip / .tar.gz) Repositorio completo

🛡️ Seguridad e Instalación

  • Compatible con Android 7.0 (Nougat) o superior (API 24+).
  • 100% Offline, sin recolección de datos, sin anuncios y con cifrado local AES-256-GCM.
  • Si Android muestra una advertencia al instalar el APK, selecciona "Instalar de todas formas" (al tratarse de una compilación independiente fuera de Google Play).

El Piedrero v1.0-beta.6

Pre-release

Choose a tag to compare

@DevNaranjo DevNaranjo released this 04 Sep 20:01

🃏 El Piedrero — v1.0-beta.6 (04/09/2026 - Patch 2) — 🪨

¡Nuevo parche de El Piedrero! Esta actualización soluciona problemas críticos de permisos en partidas multijugador, introduce la personalización de la botonera de cantos y añade rotación automática del repartidor de cartas.


🚀 Novedades y Mejoras Principales

  • 👥 Sincronización Multijugador Corregida (2, 3, 4, 6 y 8 Jugadores):

    • Se corrigió la asignación de equipos y validación en el anfitrión: ahora todos los jugadores clientes pueden sumar/restar sus propias piedras y hacer cánticos de manera independiente sin quedar bloqueados.
    • Resolución estricta de permisos por equipo (A, B, C y D) impidiendo que un jugador modifique piedras ajenas mientras mantiene total libertad sobre las suyas.
    • Preservación de asientos y roles de juego en caso de reconexión de clientes.
  • 🎛️ Personalización de Distribución de Botones:

    • Nueva opción "Cambiar distribución" en el menú de ajustes (⚙️) que permite a cada usuario reordenar la botonera de acciones rápidas (Limpiar, Majo, Majo y Limpio, etc.) según su preferencia.
    • Los ajustes se guardan automáticamente en memoria local de forma persistente.
  • 🔄 Rotación y Aviso del Siguiente Repartidor:

    • Al completar las manos reglamentarias o cuando un equipo alcanza las 21 piedras, la app identifica y notifica automáticamente quién es el siguiente jugador al que le toca repartir.
  • 📡 Optimización de Audio y Modo Espejo / Smart TV:

    • Guía y selector interactivo de métodos para compartir pantalla (Google Cast, Miracast y duplicación de pantalla).
    • Corregido el corte o congelamiento del audio/música de fondo tras cantar jugadas o al emitir a pantallas externas.
  • 🧪 Estabilidad y Calidad:

    • 28 pruebas unitarias automatizadas que garantizan el correcto funcionamiento de la red local, recuento de piedras y turnos.

📦 Archivos del Release

Archivo Descripción
ElPiedrero_v1.0.6.apk Instalador universal listo para instalar en cualquier teléfono o tablet con Android 7.0+ (Nougat en adelante).

El Piedrero v1.0-beta.5

Pre-release

Choose a tag to compare

@DevNaranjo DevNaranjo released this 04 Sep 14:17

🃏 El Piedrero — v1.0-beta.5 (04/09/2026 - Patch 5) — 🪨

¡Nueva versión v1.0.5 de El Piedrero! Esta actualización incorpora compatibilidad con pantallas y televisiones inteligentes (TV Cast), nueva música ambiental folclórica generada por Inteligencia Artificial con reproducción aleatoria continua, robustez total en la retención de partidas al minimizar y mejoras sustanciales en la experiencia de juego tanto local como multijugador.


🚀 Novedades y Mejoras Destacadas

📺 Transmisión en Directo a Pantallas Grandes (TV Cast)

  • Proyección en Smart TV: Nuevo diálogo interactivo (TvCastDialog) que permite duplicar y proyectar el marcador o el código QR de la sala en cualquier televisor o monitor externo compatible con Google Cast, Chromecast, Fire TV o Miracast / Pantalla Inalámbrica.
  • Sonido TV Fluido: Optimización automática permanente que silencia la música ambiental de fondo mientras se transmite a una pantalla externa para que las voces de los cánticos y los efectos de piedras salgan con la máxima nitidez y sin microcortes de ancho de banda en la red Wi-Fi.

🎼 Música Ambiental Folclórica Generada por IA (Aleatoria)

  • 6 Nuevas Pistas Instrumentales: Incorporación de piezas originales inspiradas en las cadencias y melodías tradicionales de las islas (bgm_01.mp3 a bgm_06.mp3), 100% libres de derechos fonográficos y de entidades de gestión colectiva (SGAE).
  • Reproducción Aleatoria (Shuffle): Cada vez que inicia la música o termina una canción, se selecciona una pista al azar evitando repeticiones consecutivas.
  • Licenciamiento Bilingüe Transparente: Documentación legal y técnica completa disponible en español e inglés en MUSIC_LICENSES.md y accesible directamente desde el diálogo de Privacidad de la app.

💾 Gestión Inteligente del Ciclo de Vida y Persistencia

  • Retención al Minimizar: Gracias a la configuración singleTask, si minimizas la app para responder un mensaje, atender una llamada o apagar la pantalla, la partida nunca se reinicia y permanece al 100% en memoria donde la dejaste.
  • Cierre Total y Salida Limpia: Si cierras la aplicación por completo (deslizando hacia arriba en la vista de aplicaciones recientes), el nuevo servicio nativo AppCleanupService detecta la eliminación de la tarea (onTaskRemoved), limpia la sesión en disco y al volver a entrar la app arranca limpiamente en el Menú de Inicio.
  • Silenciado Inmediato en Recientes: En cuanto abres el carrusel de aplicaciones recientes o cambias de ventana, el reproductor de audio corta el volumen a cero y se pausa de forma instantánea, reanudándose suavemente al regresar.

🌐 Mejoras en Multijugador Local (Wi-Fi + QR)

  • Sincronización Bidireccional de Piedras: Actualización instantánea y en tiempo real del marcador entre el teléfono anfitrión y los dispositivos de los rivales.
  • Permisos por Jugador y Equipo: Cada rival que se une por código QR solo puede sumar piedras a su propio equipo cuando canta una jugada, evitando manipulaciones accidentales.
  • Margen de Reconexión de 5 Minutos: Cuenta atrás regresiva visible en el marcador antes de abandonar la sala si un jugador minimiza la app o sufre microcortes en la conexión Wi-Fi local.

🃏 Recuento de Cartas Automatizado y Seguro

  • Diferencia Automática en Local: En partidas de 2, 4, 6 y 8 jugadores, al ingresar las cartas contadas por un equipo, el sistema calcula de forma automática el resto correspondiente al equipo rival hasta completar las 40 cartas.
  • Bloqueo de Cartas Insuficientes: El botón "Aplicar Piedras" se bloquea de forma preventiva si la suma total no alcanza las 40 cartas de la baraja (o 39 en tríos), indicando de forma clara cuántas cartas faltan por contar para evitar errores de tanteo.

🏆 Suma Rápida y Mensaje de Victoria (+21 Piedras)

  • Se eliminaron las restricciones al sumar piedras manualmente en el recuento: ahora es posible sumar tanteos superiores a 21 piedras si la mano final otorga una ventaja mayor.
  • Al superar las 21 piedras reglamentarias, la interfaz muestra el aviso destacado:

    🏆 ¡Ganarás por X piedras de más! (donde X son las piedras por encima de 21).


👁️ Accesibilidad y Refinamiento Visual

  • Escala de Fuente Fija y Responsive (fontScale = 1.0f): La tipografía se mantiene estable y responsive independientemente de si el usuario tiene configurada una fuente gigante en los ajustes de accesibilidad de su teléfono, evitando que los botones y tarjetas se desborden.
  • Ajuste del Encabezado (TopAppBar): Se compactaron los botones de acción a 38 dp y se protegió el título "El Piedrero 🃏" en una sola línea centrada, eliminando cualquier corte o solapamiento en el borde superior de la pantalla.

📦 Información Técnica y Compilación

  • Version Code: 1
  • Version Name: 1.0.5
  • SDK Mínimo Requerido: Android 7.0 (API 24 Nougat)
  • SDK Objetivo: Android 14 (API 34)
  • Optimización y Seguridad: Minificación y ofuscación de código R8 activada en release.
  • Firma Digital Oficial: Certificado de producción a nombre de DevNaranjo.

📥 Archivos de Instalación

Archivo Descripción Plataforma
ElPiedrero_v1.0.5.apk Instalador directo APK optimizado y firmado Android 7.0+ (ARM64 / ARMv7 / x86_64)

El Piedrero v1.0-beta.4

Pre-release

Choose a tag to compare

@DevNaranjo DevNaranjo released this 03 Sep 20:34

🃏 El Piedrero — v1.0-beta.4 (03/09/2026 - Patch 4) — 🪨

Esta versión introduce la persistencia completa del historial de jugadas agrupado por manos, un rediseño compacto para la configuración de equipos locales y el refinamiento de las frases tradicionales de cuenta atrás en Buenas.


🚀 Novedades y Mejoras Principales

  • 📜 Historial Permanente de la Partida ("Registro X"):

    • Las jugadas ya no se borran al finalizar los repartos de una mano o al aplicar el recuento de cartas.
    • Cada ciclo de mano completada queda almacenado permanentemente como Registro X (Guardado), mientras que la mano activa se identifica como Registro X (En curso).
    • Se añaden pestañas de filtrado rápido (Todos, Registro 1, Registro 2...) y etiquetas identificativas en cada movimiento (Reg. X · R Y).
  • 👥 Rediseño Compacto de Equipos y Jugadores en Local:

    • Reorganización visual para 4, 6 y 8 jugadores: cada equipo cuenta con su propia tarjeta compacta que agrupa el nombre del equipo y sus dos jugadores colocados en dos columnas paralelas.
    • Se eliminan los espacios muertos, scrolls excesivos y desbordamientos de pantalla en paneles estrechos.
  • 🎯 Refinamiento de Frases Tradicionales en Buenas:

    • Se elimina la coletilla redundante "para ganar" en todas las frases del tanteador para maximizar la legibilidad y limpieza visual.
    • Incorporadas las frases tradicionales completas:
      • A falta de 7 piedras: 🎯 A falta de un caracolillo de bufos
      • A falta de 6 piedras: 🎯 A falta de un caracol de bufos
      • A falta de 5 piedras: 🎯 A falta de un caracolillo
      • A falta de 4 piedras: 🎯 A falta de un caracol
      • A falta de 3 piedras: 🎯 A falta de una parranda
      • A falta de 2 piedras: 🎯 A falta de ronda de bufos
      • A falta de 1 piedra: 🎯 A falta de una ronda
  • 🎴 Estandarización de Simbología y Control de Cartas:

    • Sustitución uniforme de iconos por el emoji tradicional de baraja 🃏 en avisos, repartidor y pantallas de recuento.
    • Validación estricta del mazo de 40 cartas: si la suma de cartas excede 40, se muestra una alerta que facilita el recuento manual.
  • 🧹 Limpieza Visual del Marcador:

    • Eliminación de textos amarillos redundantes en las tarjetas de tanteo tanto en modo local como en multijugador.
  • 🧪 Estabilidad y Documentación:

    • Corrección de suite de pruebas unitarias para el ciclo de vida de salas en espera.
    • Documentación precisa de comandos de ejecución Gradle adaptados a PowerShell y CMD en README.md.

El Piedrero v1.0-beta.2

Pre-release

Choose a tag to compare

@DevNaranjo DevNaranjo released this 03 Sep 16:08

🃏 El Piedrero — v1.0.beta.2 (03/09/2026 - Patch 2) — 🪨

¡Nuevo parche de El Piedrero! Esta versión se enfoca en mejorar la experiencia de conexión multijugador por código QR, optimizar el consumo de batería y recursos, proteger la privacidad de la red local, calibrar los volúmenes y corregir la visualización de los controles en la pantalla del marcador.


🆕 Novedades y Mejoras

  • 🔄 Liberación Inmediata de Cámara y Pantalla de Carga:

    • En cuanto se detecta el código QR de la mesa, la aplicación desvincula y apaga inmediatamente la cámara trasera (unbindAll), evitando calentamiento innecesario del dispositivo y consumo excesivo de batería.
    • Se sustituye el visor de la cámara por una pantalla de carga dedicada (ConnectionLoadingView) que informa claramente: "Conectando a la mesa de [Nombre del Anfitrión]", acompañada de un indicador de progreso y un botón de cancelación accesible.
  • 🛡️ Privacidad de Red Local (Sin direcciones IP visibles):

    • Se eliminaron por completo las direcciones IP y puertos en los mensajes de error e interfaces de usuario.
    • Si la conexión no se puede establecer, se presenta una pantalla de fallo amigable (ConnectionErrorView) con el nombre del anfitrión ("No se pudo conectar a la mesa de [Nombre]"), indicaciones útiles de red (Wi-Fi o Zona Wi-Fi) y botones directos para "Volver a Escanear QR" o "Volver al Menú".
  • 🔘 Visualización Estable de Botones en Buenas:

    • Se resolvió el problema donde los botones de sumar y restar piedras (+ y ) se comprimían o no se veían en ciertos modelos de teléfono al entrar en Buenas.
    • El badge "🌟 Buenas (X/10)" ahora queda protegido en una sola línea (maxLines = 1), la tipografía del contador de piedras se adaptó armónicamente y los botones táctiles cuentan con una altura mínima garantizada de 44 dp, asegurando total visibilidad en pantallas con fuentes grandes o paneles estrechos.
  • 🔊 Volumen de Piedras Sincronizado en Tiempo Real:

    • El sonido acústico de sumar y restar piedras ahora está conectado a los deslizadores de volumen general y de efectos. Al bajar o silenciar los efectos, el sonido de las piedras baja proporcionalmente de inmediato.
  • 🔉 Ajuste y Calibración de Volúmenes por Defecto:

    • Volumen general: 100%
    • Efectos y piedras: 90%
    • Música ambiental: 50%
    • Se atenuó la ganancia acústica máxima de los tonos sintéticos para evitar pitidos estridentes.
  • 📳 Interruptor de Vibración Háptica:

    • Se añadió un nuevo control de Vibración en el diálogo de ajustes de audio, permitiendo activar o silenciar las respuestas hápticas de toques, jugadas, cantos y victoria según la preferencia de cada jugador.
  • ⚠️ Avisos de Seguridad en Multijugador:

    • Advertencia al anfitrión antes de iniciar la partida si aún faltan jugadores por entrar a la sala ("No, esperar" / "Sí, empezar").
    • Diálogo de confirmación al salir de una sala multijugador para evitar abandonos involuntarios.

📦 Archivos de Instalación y Verificación

  • APK Oficial: ElPiedrero_v1.0.03.092026.2.apk (8.24 MB)
  • Requisitos: Android 7.0 (API 24) o superior.
  • Firma Digital: Certificado oficial emitido a nombre de DevNaranjo.
  • Ofuscación y Optimización: Compilado con R8 y optimización de recursos activa.
  • Modelo: 100% Offline, código abierto y sin recopilación de datos.

El Piedrero v1.0-beta.1

Pre-release

Choose a tag to compare

@DevNaranjo DevNaranjo released this 03 Sep 15:29

🃏 El Piedrero — v1.0-beta.1 (03/09/2026 - Patch 1) — 🪨

Esta versión representa el paso formal a producción tras una auditoría exhaustiva de calidad (QA), ciberseguridad, rendimiento, conformidad legal y accesibilidad universal (WCAG 2.1 AA).


🌟 Novedades y Mejoras Principales

  • 🛡️ DevSecOps y Optimización R8:

    • Compilado con minificación de código R8 y reducción de recursos (shrinkResources), reduciendo el tamaño del APK a solo 8.2 MB (más de un 40% de optimización).
    • Eliminación total de credenciales en el código fuente; firma administrada por variables de entorno seguras en el flujo de CI/CD.
  • 🔒 Seguridad de Red Local (Anti-Replay):

    • Toda la comunicación P2P entre dispositivos mediante sockets TCP viaja cifrada con AES-256-GCM efímero vía QR físico.
    • Añadido contador monotónico de secuencia (sequenceNumber) y validación temporal estricta de tramas (<60s) para mitigar ataques de reinyección de paquetes en redes locales.
  • 🔄 Resiliencia P2P y Recuperación de Asientos:

    • Ventana de gracia para reconexiones automáticas durante la partida: si un jugador sufre un microcorte Wi-Fi, recupera automáticamente su asiento, equipo asignado y marcador sin reinicios ni rebalanceos involuntarios.
  • Accesibilidad Universal para Mayores (WCAG 2.1 AA / AAA):

    • Touch Targets ≥ 48 dp: Todos los botones de suma/resta de piedras, cantos, controles de reparto y botones de diálogo garantizan un área táctil mínima de 48×48 dp.
    • Alto Contraste: Ratios de contraste superiores a 10:1 en las insignias de "Victorias" y "En Buenas", facilitando la visualización en exteriores bajo luz solar directa.
    • TalkBack: Compatibilidad semántica con lectores de pantalla mediante descripciones completas en español en todos los controles interactivos.
  • 🎼 Música y Conformidad Legal (100% Royalty-Free):

    • Música ambiental acústica tradicional canaria libre de derechos de autor fonográficos o gestión colectiva (CC0 / Dominio Público).
    • Incorporado diálogo de Licencias de Código Abierto accesible desde la pantalla principal, cumpliendo la atribución Apache 2.0 (ZXing, AndroidX, Compose).
  • 🎧 Audio Focus Nativo del Sistema:

    • Integración de AudioFocusRequest para atenuar o pausar la música automáticamente ante llamadas entrantes u otras apps de sonido, con purga automática de caché.
  • 📱 Estabilidad Visual:

    • Fijada la orientación en modo vertical (portrait) para máxima estabilidad durante partidas físicas en mesa y uso de cámara con CameraX.

📦 Verificación del Instalador

Parámetro Valor
Archivo app-release.apk (o ElPiedrero_v1.0.03092026.apk)
Tamaño 8.22 MB (8.222.131 bytes)
Compatibilidad Android 7.0 (Nougat, API 24) o superior
Firma Digital RSA 2048 bits · Emitido a nombre de DevNaranjo
SHA-256 1ABE3B8273570F549C7ED6954FDFA13B0BE8366BC150D59755163EB86B40626C