Jetpack Compose
Interfaz declarativa
Pantallas reactivas conectadas al ViewModel. Navegacion Compose con grafos tipados, transiciones fluidas y tema Material 3. Sin vistas XML heredadas, sin layouts innecesarios.
Tecnologia
La app usa MVVM: MainActivity gestiona entrada y permisos, Compose renderiza, MediaPlayerViewModel concentra estado, MediaFileRepository consulta medios y los servicios sostienen playback e indexacion. Cada capa tiene responsabilidad unica y Interfaces claras.
Interfaz declarativa
Pantallas reactivas conectadas al ViewModel. Navegacion Compose con grafos tipados, transiciones fluidas y tema Material 3. Sin vistas XML heredadas, sin layouts innecesarios.
Motor de reproduccion
El motor que usan Netflix, YouTube y Spotify. Reproduce FLAC, MP3, OGG, MKV, MP4, AVI, WAV, AAC, OPUS y mas formatos sin conversiones. MediaSession para control desde la barra de notificaciones y servicio de primer plano para reproduccion continua.
Biblioteca multimedia
Lectura de la biblioteca multimedia del dispositivo a traves de MediaStore. Carpetas elegidas por el usuario mediante Storage Access Framework. Navegacion profunda por estructura de archivos y busqueda por nombre.
Persistencia de estado
Persistencia ligera de recientes, posicion de reproduccion, velocidad, volumen y estado de la sesion. Preferencias de usuario sin SQLite, sin overhead innecesario.
Indexacion periodica
Escaneos periodicos de medios nuevos sin bloquear la interfaz principal. Trabajos programados que se ejecutan cuando el dispositivo esta en reposo y con conexion WiFi para minimizar consumo de bateria.
Deteccion de cambios
Monitoreo de carpetas seleccionadas para refrescar la biblioteca cuando el sistema de archivos cambia. Archivos nuevos, eliminados o renombrados se detectan automaticamente.
Motor Media3/ExoPlayer: el mismo que usan las apps mas grandes de Android. Reproduce cualquier formato sin conversiones, sin perdida de calidad y sin excusas.
Compose Screens · Navigation · Theme Material 3
MediaPlayerViewModel · Estado Reactivo · Eventos de UI
MediaFileRepository · MediaStore Queries · Filesystem
MediaPlaybackService · MediaIndexingService · MediaSession
ExoPlayer maneja codigos de audio y video nativos de Android plus decoders por software para formatos que el hardware no soporta. FLAC lossless, MKV con multiples pistas de audio, y formatos legacy como WMA.
Control desde auriculares, relojes inteligentes, Android Auto y la barra de notificaciones. Metadata de la cancion, caratula del album y controles de reproduccion en todo el sistema.
Servicio de primer plano con notificacion persistente. La musica continua sonando cuando apagas la pantalla o cambias de app. Los otros reproductores cobran por esto. Wanda Player lo incluye gratis.
Buffer adaptativo, precarga inteligente y bajo consumo de bateria. Funciona perfecto en dispositivos gama media y baja sin ralentizar el sistema.