I created this app because my wife complained that her calls were going unanswered when I was walking down the street. Do you also miss calls and fail to hear your notifications or alarms sometimes? Other times, do you forget to switch to silent mode at the library, or get your ears blasted by a call at 11:54 PM?
Adaptive Sound Level monitors the ambient noise level by taking a very short audio sample every 5 seconds. The volume of your device is then set just loud enought to be heard. Of course, this approach supposes that you keep your device close by. Privacy should not be a concern because audio samples are too short to even capture a single word, nothing is stored and nothing is shared ; it is a standalone application that does not connect to anything: no ads, no account and no internet connection requiered.
You can enable volume adaptation for each sream individually: call rings, notifications, system sounds (keyboard, etc.) and alarms. You can fine tune the volume relative to the ambient noise level by hand.
By default, adaptation is running while media is played on your device (YouTube, music, etc.) but you can disable it if you feel that it makes your ringtones too loud. But most of the time, if you play media at high volume, you will also like to have high volume ringtones.
Adaptation is never running while you receive a call, but currently Android do not let applications know if sounds are currently playing on other streams: notifications, system sounds and alarms. Because measuring ambient noise level is not reliable while such streams are active, the application takes audio focus at the moment it makes the measure, interrupting the said streams. You can disable this behavior if you don't like these interruptions, but then the volume may be set louder than necessary.