AMARadio is an open-source Android application for worldwide radio streaming. By leveraging the community-supported radio-browser.info database, AMARadio provides instant access to thousands of stations in a stable, modern, and user-friendly environment.
AMARadio was developed to enable an honest and distraction-free listening experience. The app is completely ad-free, contains no tracking, and no unnecessary bloatware. Originally started as a personal project to create a simple and accessible interface for global radio, the app remains consistently transparent and easy to use – for everyone.
- Instantaneous UI: Thanks to a highly optimized architecture, switching between tabs and opening the player occurs without delay or flickering.
- Comprehensive Accessibility: Fully optimized for TalkBack and screen readers. Features semantic grouping of information, localized accessibility strings in over 74 languages, and "speaking" status icons for fluid navigation.
- Advanced Search & Filtering: Find stations by Name, Country, Language, or Tags. Metadata for over 11,000 tags is cached locally in a high-performance SQL database to enable instant offline suggestions.
- Community Support (Click Counting): Supports the global ranking of radio stations by reporting playback clicks directly to the official radio-browser.info API.
- Dynamic UI Scaling: Custom settings allow for the adjustment of the user interface size from Compact to Extra Large.
- Broad Language Support: Support for over 74 languages, including a variety of African languages (Afrikaans, Amharic, Swahili, Zulu) with a dedicated in-app language selector.
- Modern Design: Developed with Jetpack Compose, featuring seamless support for Dark/Light modes and edge-to-edge system integration.
- High-Performance Streaming: A robust engine based on AndroidX Media3 (ExoPlayer) with real-time audio thread prioritization, strict audio focus handling, and intelligent connection management.
- High Availability: Integrated failover support via mirror servers ensures uninterrupted station browsing even if the primary database is offline.
- Smart Management: Includes a sleep timer, efficient favorites management, and full support for M3U playlist export/import.
- Advanced Android Auto Integration: Fully optimized for vehicle head units with driver-safe interfaces and high-contrast Material icons.
The latest version (v1.15) introduces a high-performance SQL metadata architecture and official click count support. You can download the application from the Google Play Store or the GitHub releases page.
To build the project locally, ensure you have the latest version of Android Studio installed.
- Clone the repository:
git clone https://github.com/ounben/AMARadio.git
- Open the project in Android Studio.
- Build using the Gradle wrapper:
./gradlew assembleDebug
- Language: 100% Kotlin
- UI Framework: Jetpack Compose & Material 3
- Architecture: MVVM with Activity-scoped ViewModels for state management
- Persistence: Room Database for stations, history, and metadata cache
- Networking: OkHttp 5 & Coroutines for API communication, Coil for async image loading
- Media Engine: AndroidX Media3 (ExoPlayer)
- Target SDK: 37 (Android 17)
- Minimum SDK: 26 (Android 8.0)
Contributions are welcome and appreciated. If you wish to improve the codebase, fix bugs, or update translations, please follow these steps:
- Report issues via the GitHub Issue Tracker.
- Submit improvements via Pull Requests.
- Translation updates are highly encouraged to improve global accessibility.
This project is licensed under the GNU General Public License v3.0. Detailed information can be found in the LICENSE file.
AMARadio - Professional Radio Streaming for Android.

.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)