Skip to content

Releases: BlazeTrack/EclipseShell

Eclipse_shell 1.0 PRERELEASED

Choose a tag to compare

@BlazeTrack BlazeTrack released this 22 Jun 19:10

📦 EclipseShell - Release V1.0.0 (Estable)

Descripción del Estado Actual:
El reproductor ha alcanzado su primer estado funcional empaquetado en APK estable, desplegando con éxito una interfaz retro inspirada fielmente en la estética de MoonShell. Incorpora un motor de audio de alta fidelidad capaz de procesar formatos demandantes y un fondo interactivo de partículas espaciales en tiempo real.

Sistema de Carga: Inicialización manual de archivos de audio locales mediante un selector nativo gestionado por permission_handler.

Persistencia: Sesión puramente volátil. El árbol de reproducción se almacena de forma temporal en la memoria RAM (dentro del ConcatenatingAudioSource), lo que provoca que la lista de reproducción se reinicie por completo cada vez que el ciclo de vida de la aplicación se cierra o se sale de ella.

Controles Disponibles: Panel inferior rígido con lectura de metadatos básicos (Título del archivo y duración), barra de progreso estática y gatillos esenciales de reproducción independientes (Play, Pause, Skip y Previous).

🛠️ Planificación del Siguiente Sprint: Update V1.1.0
Para la próxima iteración vamos a transformar el reproductor en una herramienta robusta y automatizada dividiendo el trabajo en cuatro frentes técnicos:

  1. Persistencia de Listas de Reproducción (Evitar reseteo)
    Enfoque Técnico: Integrar la librería shared_preferences o hive en el proyecto.

Lógica: Cada vez que el método addFile del AudioHandlerImpl inserte una pista, guardaremos la ruta absoluta del archivo (String) dentro de una lista persistente en el almacenamiento local del teléfono. Al arrancar la app en el init(), el sistema leerá ese listado e inyectará de nuevo los archivos de forma automática en el reproductor.

  1. Escaneo Recursivo de Audio Automático
    Enfoque Técnico: Utilizar el paquete nativo path_provider junto con el sistema de directorios interno de Dart (io.Directory).

Lógica: Diseñar un hilo de ejecución en segundo plano que solicite acceso a los directorios comunes de música (/storage/emulated/0/Music, /Download). El script recorrerá cada subcarpeta de manera recursiva buscando extensiones de audio específicas (.mp3, .flac, .wav, .ogg), listando todo el contenido compatible en el "File Explorer" de entrada sin necesidad de buscar archivo por archivo a mano.

  1. Barra de Tiempo Interactiva (Búsqueda o Seeking)
    Enfoque Técnico: Reemplazar el indicador de progreso actual por un componente Slider o un ProgressBar interactivo conectado a los flujos (Streams) de just_audio.

Lógica: Utilizaremos Rx.combineLatest3 para escuchar la posición actual, el estado del búfer y la duración total de la pista. El usuario podrá arrastrar el nodo del cursor para saltar a cualquier punto exacto de la canción enviando el valor de microsegundos directamente al método seek() de nuestro handler.

  1. Sistema de Reproducción Aleatoria (Shuffle)
    Enfoque Técnico: Implementación de banderas lógicas sobre el contenedor QueueHandler.

Lógica: Añadir un botón físico en la interfaz de "PLAYCONTROL". Al activarse, invocará el método _player.setShuffleModeEnabled(true) nativo de just_audio que reordena internamente los índices de los archivos cargados, manteniendo el orden visual original del explorador pero alternando las pistas de forma impredecible.

EclipseShell 1.6.10

Choose a tag to compare

@BlazeTrack BlazeTrack released this 23 Jun 00:32
eb6f2a8

EclipseShell — v1.6.9

Novedades

  • Nuevo ícono de la app y nombre de directorio actualizado (branding EclipseShell).
  • Reproducción aleatoria (shuffle) con botón para activar/desactivar.

Correcciones

  • Solucionado el fallo de compilación por uso del embedding Android v1 (migración a v2).
  • Solucionado el error "unsupported Gradle project": el proyecto Android ahora es
    autocontenido y consistente (Gradle 9.1.0 + Kotlin DSL).
  • Corregido error que impedía compilar (método _defaultScanRoot duplicado).
  • Añadida la dependencia de Material requerida por el tema de la app (corrige el
    enlazado de recursos de Android).

Interno / CI

  • El workflow de GitHub Actions ya no depende del frágil paso flutter create .;
    ahora compila el APK de forma determinista.
  • El build del APK se valida automáticamente en cada Pull Request.
  • Entorno de desarrollo reproducible (Flutter stable + Android SDK + Java 17).