Skip to content

The (official) Music Assistant Mobile app is a cross-platform client application designed for Android, iOS, and Java runtime environments. Developed using Kotlin Multiplatform (KMP) and Compose Multiplatform frameworks, this project aims to provide a unified codebase for seamless music management across multiple platforms.

License

Notifications You must be signed in to change notification settings

music-assistant/mobile-app

Repository files navigation

Music Assistant Mobile app

The (official) Music Assistant Mobile app is a cross-platform client application designed for Android and iOS. Developed using Kotlin Multiplatform (KMP) and Compose Multiplatform frameworks, this project aims to provide a unified codebase for seamless music management across mobile platforms.

Please note that this project is still under (heavy) development and not yet in a production state or published to any of the app stores. Development work is in progress to allow this project to become the official mobile app for the Music Assistant project.

This client interfaces with the Music Assistant Server, an open-source media library manager that integrates with various streaming services and connected speakers. The server acts as the core component, running on devices like Raspberry Pi, NAS, or Intel NUC, and facilitates centralized music management.

By leveraging the capabilities of KMP and Compose Multiplatform, Music Assistant Kmp Client offers a consistent and efficient user experience across different platforms, simplifying the development process and ensuring feature parity.

Current set of features:

  • All platforms:
    • managing MA players queues and playback;
    • local playback on device from MA library;
    • comprehensive Settings screen with section-based UI for server connection, authentication (builtin/OAuth), and local player configuration.
  • Android-specific:
    • media service (background playback) and media notification in system area for quick access to players controls;
    • Android Auto support for built-in player.

Contributing

The project is in an early stage of development. Any help (especially from designers and iOS developers) is appreciated. To contribute:

  1. Find an issue to work on - if you've noticed something wrong or missing, please file an issue about it
  2. Ask in the issue if you can work on it - this prevents multiple people from working on an issue at the same time
  3. Submit a PR with "Closes #" at the top of the description

Building from source

iOS

See ios_build_instructions.md for a full step-by-step guide covering:

  • Required tools and JDK version (JDK 21 LTS required — JDK 25 is not supported)
  • WebRTC framework setup
  • Signing and provisioning configuration
  • Build commands for simulator and physical device
  • Known limitations and troubleshooting

Android

./gradlew :composeApp:assembleDebug
./gradlew :composeApp:installDebug

Want to try it?

Download and install debug APK from latest release on releases page.

Disclamer: this is debug version of application, and isn't recommended for usage beyond testing purposes!

To use the app with Android Auto you will need additional steps

  • in Android Auto menu on your phone, click repeatedly on Version and permission info text, until dialog appears, that will allow you turning dev mode on;
  • after turning it on, in overflow menu (three dots on top) choose Developer settings;
  • in dev settings, find and enable Unknown sources;
  • after this, customize your launcher to show Music Assistant.

About

The (official) Music Assistant Mobile app is a cross-platform client application designed for Android, iOS, and Java runtime environments. Developed using Kotlin Multiplatform (KMP) and Compose Multiplatform frameworks, this project aims to provide a unified codebase for seamless music management across multiple platforms.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 11