How zyl6932/hypermusiccover works
HyperMusicCover is an Android companion app and SystemUI module for customizing lock-screen music presentation. The user-facing flow is to configure appearance and features in the app, send supported settings to the module, and have the module affect lock-screen surfaces; the source tree also exposes distinct lyrics, cover-animation, shade, and mini-player areas. MainActivity loads and persists app preferences, while MiniPlayerActivity queries module status and sends mini-player configuration. Source excerpts are partial and the README is empty, so wiring among unsampled runtime subsystems is intentionally not inferred.
Main entry points: MiniPlayerActivity.kt Island settings · UpdateUi.kt Update controller · AppSettings.kt App preferences · CoverActivity.kt Cover controls
Components 26
App and settings
- Main navigation
app/src/main/java/com/os4/musiccover/MainActivity.kt - App preferences
app/src/main/java/com/os4/musiccover/AppSettings.kt - Theme settings
app/src/main/java/com/os4/musiccover/ThemeActivity.kt - Island settings
app/src/main/java/com/os4/musiccover/MiniPlayerActivity.kt
Lock-screen features
- Module bridge
app/src/main/java/com/os4/musiccover/ModuleBridge.kt - SystemUI module entry
app/src/main/java/com/os4/musiccover/Main.java - Lock-screen lyrics
app/src/main/java/com/os4/musiccover/LockLyrics.java - Lock-screen islands
app/src/main/java/com/os4/musiccover/LockIslands.kt - Cover controls
app/src/main/java/com/os4/musiccover/CoverActivity.kt - Shade surface
app/src/main/java/com/os4/musiccover/ShadeActivity.kt - Mini-player runtime
app/src/main/java/com/os4/musiccover/MiniPlayerRuntime.kt - Mini-player scene
app/src/main/java/com/os4/musiccover/MiniPlayerScene.kt
Lyrics and media
- Lyrics providers
app/src/main/java/com/os4/musiccover/OnlineLyrics.java - Lyrics parsing
app/src/main/java/com/os4/musiccover/LyricParse.kt - Lyrics display
app/src/main/java/com/os4/musiccover/LyricView.java
Rendering and motion
- Cover rendering
- Cover transitions
app/src/main/java/com/os4/musiccover/CoverMorphRoute.java - Cover video export
app/src/main/java/com/os4/musiccover/CoverVideoEncoder.java
About and updates
- About and update UI
app/src/main/java/com/os4/musiccover/ui/screen/about/AboutPage.kt - Update controller
app/src/main/java/com/os4/musiccover/ui/screen/about/UpdateUi.kt - Release checking
app/src/main/java/com/os4/musiccover/updater/UpdateApi.kt - Update coordination
app/src/main/java/com/os4/musiccover/updater/UpdateCheck.kt - APK installation
app/src/main/java/com/os4/musiccover/updater/UpdateInstaller.kt
Other components
- App user
- Android SystemUI
- GitHub releases
Connections 20
- App user → Main navigation: opens
- Main navigation → App preferences: loads and saves
- App user → Theme settings: opens
- Theme settings → App preferences: loads and saves
- App user → Island settings: configures
- Island settings → App preferences: loads
- Island settings → Module bridge: queries and sets
- Module bridge → Android SystemUI: exchanges module data
- SystemUI module entry → Android SystemUI: hooks into
- Cover controls → Cover rendering: presents
- Cover rendering → Cover transitions: uses transitions
- Cover controls → Cover video export: exports animation
- Lyrics providers → Lyrics parsing: provides lyrics
- Lyrics display → Lyrics parsing: renders timed text
- About and update UI → Update controller: hosts
- Update controller → Update coordination: coordinates
- Update coordination → Release checking: checks releases
- Release checking → GitHub releases: fetches release data
- Update controller → APK installation: installs update
- Mini-player runtime → Mini-player scene: presents