DEV Community

Cover image for RingtoneSmartKit – Kotlin Library for Customizing Android Ringtones Easily
Amjd Alhashede
Amjd Alhashede

Posted on • Edited on

RingtoneSmartKit – Kotlin Library for Customizing Android Ringtones Easily

I've recently built and released an open-source Kotlin library called RingtoneSmartKit, focused on simplifying ringtone management on Android.

What it does:

  • Set system ringtones (alarm, notification, incoming call)
  • Assign custom ringtones to specific contacts
  • Supports assets and content URIs as audio sources
  • No need for Context or Activity, making it easy to use anywhere
  • Built using clean architecture and designed for extension

I created this library because Android lacks a modern and reusable way to handle ringtones cleanly.

Would appreciate your feedback, ideas, or contributions.

➡️GitHub

Top comments (5)

Collapse
 
amjdalhashede profile image
Amjd Alhashede

Hey everyone,
I’m continuously working on improving this ringtone library, and I’d love to hear your suggestions or feature requests!
What features or improvements would make it more useful for you?
Feel free to share any ideas or pain points — your feedback really helps shape the roadmap.

Thanks in advance!

Collapse
 
mediaengine_cdf0f568f0ac1 profile image
MediaEngine

Great article! Does your method support setting ringtones directly from an internet URL?

Collapse
 
amjdalhashede profile image
Amjd Alhashede

Thank you! I'm glad you liked it.
Currently, setting ringtones directly from an internet URL is not supported — the method only works with local files, including app assets.
That said, it’s actually one of the most requested features, and we’re actively exploring how to support it in a reliable and user-friendly way.
Really appreciate you bringing it up — stay tuned for updates!

Collapse
 
mediaengine_cdf0f568f0ac1 profile image
MediaEngine

Sounds great! Looking forward to the update.

Thread Thread
 
amjdalhashede profile image
Amjd Alhashede

Thanks a lot! I'll make sure to share updates as soon as we make progress on that. Feel free to follow the project or open an issue if you have specific needs — your feedback really helps shape the roadmap! 🙌