OpenTune 2.0.8
📌 Notas de la Versión 2.0.8
📌 Cambios Principales
🎨 Refactor: Reestructuración de componentes UI y actualización de dependencias
Este cambio introduce una refactorización profunda en los componentes visuales de la app para hacer el código más modular, reutilizable y coherente, además de actualizar librerías y pulir el diseño del reproductor.
🧩 Reestructuración en Items.kt
Se centralizan medidas, opacidades y tamaños mediante:
-
ItemDimensionsyItemAlpha, garantizando consistencia visual en toda la app. -
Creación de componentes reutilizables y limpios:
ThumbnailImage: imagen estandarizada conAsyncImage.PlayButton: botón circular de reproducción con fondo uniforme.DownloadStateIcon: muestra el estado de descarga (completo, en cola o en curso).BadgeIconyStandardBadges: unifican íconos comunes como “like”, “descargado” o “explícito”.SelectionOverlay: capa visual para ítems seleccionados.
Además:
- Se simplificaron los
Composableprincipales (SongListItem,AlbumGridItem,ArtistListItem,YouTubeListItem, etc.) reemplazando código repetido con los nuevos componentes. - Se extrajo la lógica de descarga de álbumes en la nueva función
rememberAlbumDownloadState. - Se mejoró la accesibilidad, agregando
contentDescriptiony roles semánticos a los elementos de lista.
Items.kt
🎵 Ajustes visuales en el reproductor
Se optimiza la disposición de elementos en ambas orientaciones:
- El texto “Reproduciendo desde” ahora se agrupa con la miniatura del álbum para mantener alineación central.
- Se eliminaron
fillMaxSizeystatusBarsPaddingdel componenteThumbnail, delegando el control de diseño alPlayer. - Se ajustaron los márgenes y espaciados para una vista más equilibrada y limpia en el reproductor expandido.
Player.kt
Thumbnail.kt
⚙️ Actualización de dependencias
Se actualizaron versiones clave para estabilidad y compatibilidad:
lifecycle: 2.8.7 → 2.9.4media3: 1.5.1 → 1.8.0materialRipple: 1.9.0-beta02 → 1.9.4
También se incrementó la versión de la app:versionCode: 121 → 122versionName: 2.0.7 → 2.0.8
gradle/libs.versions.toml
app/build.gradle.kts
🎧 Refactor: Ajuste de diseño y espaciado en Player
Se reorganiza la interfaz del reproductor para mejorar el espaciado y estructura visual, especialmente al mostrar el título de la cola actual.
-
El texto “Reproduciendo desde” y el título de la cola se movieron fuera del
Boxprincipal hacia laColumnsuperior. -
Se añadió un
Spacerde35.dppara mantener un margen superior consistente y evitar solapamientos. -
Se ajustaron los márgenes inferiores en secciones del contenido principal y vista de letras.
Player.kt
⚙️ Refactor: Mejora visual de ajustes y eliminación de importación de playlists
Renueva el diseño del perfil en la pantalla de ajustes y elimina la opción de importar playlists desde respaldo.
-
Settings:
- El avatar ahora mide
96.dpcon borde degradado y estado “en línea”. - Se rediseña el modo sin sesión, mostrando un logo más grande y el subtítulo “Tu música, sin límites”.
- El nombre de usuario usa
AnimatedContenty se incrementa el padding general.
- El avatar ahora mide
-
BackupAndRestore:
- Se elimina la sección “Importar Playlists” (M3U, CSV), ahora movida a otra parte de la app.
SettingsScreen.kt BackupAndRestore.kt
🌐 Refactor: Nuevo selector de idioma con búsqueda integrada
El selector de idioma fue completamente rediseñado con una interfaz más moderna, eficiente y una barra de búsqueda.
-
UI Modernizada:
- Se reemplazan
Cards porSurfaces al estilo Material 3 Expressive. - Los idiomas ahora muestran esquinas redondeadas, elevación y badges compactos.
- Se renombraron los componentes a
LanguageItemyCurrentLanguageBadge.
- Se reemplazan
-
Nueva búsqueda:
- Se añade un
SearchBarpara filtrar idiomas por nombre o código. - Muestra el mensaje “Sin resultados” cuando no hay coincidencias.
- Se añade un
-
Optimización:
- Se reduce la lista de idiomas experimentales y los retrasos de reinicio (de 1200 ms a 800 ms).
- Se mejora la lógica al limpiar o seleccionar idioma.
LocaleManager.kt
🎶 feat: Mostrar título de cola en Player y mejorar traducciones
Se añade la sección “Reproduciendo desde” en la pantalla del reproductor, mostrando el nombre de la playlist o álbum actual.
-
Animación fluida de entrada/salida y efecto marquee para títulos largos.
-
Nuevas cadenas añadidas y traducidas en:
values/strings.xml values-es/strings.xml values-pt-rBR/strings.xml
👤 Refactor: Rediseño de ArtistScreen y ajustes del reproductor
Rediseño completo de la pantalla de artista con un estilo más moderno inspirado en YouTube Music y nuevos valores por defecto del reproductor.
-
ArtistScreen:
- Nuevo encabezado “Hero” de 380 dp con imagen completa y degradado múltiple.
- Avatar circular de 110 dp con sombra flotante.
- Botones reorganizados (Suscribirse, Aleatorio, Compartir) con colores de contenedor distintos.
TopAppBarcon transición de transparencia y comportamiento de desplazamiento suave.
-
Player:
- Alineación de texto por defecto ahora centrada.
SliderStyle→SQUIGGLYy botones del reproductor →SECONDARY.
ArtistScreen.kt Player.kt
🧩 feat: Añadir dependencias de Glance
Se agregan las librerías glance-appwidget y glance-material3 (v1.1.1) para preparar el soporte de widgets modernos con Jetpack Glance.
build.gradle
✨ feat: Actualización de Material3 y mejora del fondo en letras
Actualiza la versión de Material3 y optimiza el efecto difuminado en el fondo de la pantalla de letras.
-
Dependencia:
material3actualizada de1.5.0-alpha04a1.5.0-alpha07.
-
UI:
- El
blur()se aplica antes degraphicsLayer()para un difuminado más suave. - Se incrementa el escalado de fondo de
1.8fa2.5f.
Lyrics.kt MainActivity.kt - El
🧹 Refactor: Eliminación de componentes obsoletos
Se eliminan los composables PreferenceGroup y PreferenceCategory, ya sin uso, para limpiar el código.
Preference.kt
📊 Estadísticas de la Versión:
🤝 Colaboración de Código Abierto
OpenTune es un proyecto de código abierto y siempre estamos buscando colaboradores para mejorar el proyecto. ¡Tu contribución es bienvenida!
🛠️ Cómo Contribuir:
- Haz un fork del repositorio: Clona el repositorio para trabajar en mejoras.
- Envía pull requests: Una vez que hayas realizado tus cambios, envía un pull request para que podamos revisar y fusionar tus contribuciones.
- Explora y mejora el código fuente: Si encuentras algún error o tienes una idea para mejorar el proyecto, ¡no dudes en compartirla!
📄 Licencia
Este proyecto está bajo la licencia MIT y GPL 3
📝 Registro de Cambios
Full Changelog: 2.0.7...2.0.8
