"Sounds keeps stopping" message; can't change Ringtone or other Notification sounds

There is actually a app called “Sounds” (com.android.soundpicker). That’s the app responsible for showing the dialog to change ringtones.
Would be really interesting to find out why it’s crashing… :thinking:

If it happens again, you can try to clear its cache / storage. The app can be accessed e.g. by searching for “Sounds” in the Settings, it’s on the bottom of the list.

3 Likes

Thanks, hirnsushi. Yes, found that App by following your instructions. Thanks.

1 Like

It’s also happening on my Fairphone 4.

I tried:

  • rebooting
  • clearing cache
  • clearing storage
  • force stopping the “Sounds” app

But it didn’t seem to work.

For me it also results in the default “ringtone” being played whenever I’m called instead of my selected .mp3 file. My morning Alarm however works with the set .mp3, but I guess it’s not using the “Sounds” app in the background :thinking:

Does anyone have an idea what else I could try?

Welcome to the community :wave:

The “Sounds” app is only used to choose the ringtone, the different apps are the ones that should be actually playing the sound.

Are you receiving the “Sounds keeps stopping” message or does your phone not play the ringtone you selected? If it’s the latter this is probably a different problem :thinking:

  • Are you using a SD card and is the .mp3 you are trying to play stored there?
  • Are you using a 3rd party app for your alarm?

Thanks :slight_smile:

Yes, the “Sounds keeps stopping” message appears when I select the Sounds app after clicking on the “Phone ringtone” Setting.
The only other option I get to find sound files is by using the App Amaze. There I can find the file and it’s properly shown in the settings when I select it, but it won’t play when I’m called. If my memory isn’t wrong. This worked at the beginning.

To your questions:

No. I don’t have an SD card in the phone currently.

The Alarm is just the regular Android clock app.

Allrighty, so that’s indeed the same issue.

Since you have already tried the workarounds and your setup is apparently pretty standard maybe a logcat could reveal some additional information. Are you familiar with adb? If you aren’t, you can follow the first two steps of this guide.
Afterwards run:

  • $ adb shell "logcat -c && logcat > /sdcard/logcat.txt"
  • Try changing the ringtone in the settings and wait for it to crash
  • Press Ctrl+C in the terminal you have adb running
  • $ adb pull /sdcard/logcat.txt
  • Upload logcat.txt to something like Pastebin, GDrive, Dropbox, Mega, or whatever you have access to :slightly_smiling_face:

Thank you for your help already. It’s always nice to learn a bit more android command line foo :slight_smile:

So I uploaded an excerpt of my logs to filen.

I think the most important part is:

03-27 12:36:23.236  8062  8062 E AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.android.soundpicker/com.android.soundpicker.RingtonePickerActivity}: java.lang.NumberFormatException: For input string: "monk_theme.mp3"
...
03-27 12:36:23.236  8062  8062 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:952)
03-27 12:36:23.236  8062  8062 E AndroidRuntime: Caused by: java.lang.NumberFormatException: For input string: "monk_theme.mp3"

Here, "monk_theme.mp3" is the file I selected as ringtone via Amaze.

1 Like

:tada:

I’ve been able to fix it :nerd_face:. Thanks @hirnsushi for showing me how to get the logs.

I’ll leave the solution here for anyone else to find it:

Root Cause of this :lady_beetle:

Using some file manager app (e.g. Amaze) to select the ringtone results in a setting being stored that crashes the com.android.soundpicker.

Symptoms

  • Your selected ringtone will not play
    • since the com.android.soundpicker handles this and it cannot parse the setting so it defaults to the default sound
  • You cannot undo the mistake inside the Android UI
    • since com.android.soundpicker cannot start with the existing setting, but it’s the only app that would store a correct setting

Solution: adb shell to the rescue

Luckily one can set the settings manually through adb:

1. Preparation

2. Get Settings

List all system settings:

adb shell settings list system
  • Look for: alarm_alert=, notification_sound=, and ringtone=
  • Any entry which does NOT start with content://0@media will probably crash
  • In my case the problem was ringtone=content://0@com.amaze.filemanager/storage_root/storage/emulated/0/Ringtones/monk_theme.mp3

3. Get one of the not broken alarm settings

adb shell settings get system notification_sound

In my case this returns:

content://0@media/external/audio/media/30?title=Snappy&canonical=1

Since the above seems to be a default android sound you can probably just copy it

4. Overwrite the settings that cause com.android.soundpicker to crash

adb shell settings put system ringtone content://0@media/external/audio/media/30?title=Snappy&canonical=1

5. :tada: Use Android UI again

Now you can use the Android UI again to change the sound settings as com.android.soundpicker will no longer crash.
Remember to only use the soundpicker to set your ringtones. Otherwise you might need to do the whole ceremony again :wink:

3 Likes

Where would I report such a bug?

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.

Hello !

I tried to set a custom ringtone via an application that allows me to select a “clip” of the music instead of the full thing. Now I’m stuck with a “cut_temp.wav” as a ringtone, and instead of playing the song, I just have a “ding” sound that repeats. When I try to change the ringtone, I get a “Sounds systematically stops” (not a perfect translation, my phone’s in French) and so I can’t change the ringtone. I suspect it’s because it’s a .wav file, but I don’t know of to correct this ?

Welcome to the community :wave:

I’ve moved your post to this existing topic.
Try clearing the cache of the Sounds app first, if that doesn’t help you might have to use the more complicated fix right at the end of the thread.

1 Like

I tried emptying the cache already, but to no avail. I’ll try adb shell !

Edit : I’m following the guide, but I’m completely lost when trying to install the drivers.

Not a Windows user myself, but let’s see if we can’t figure this out :slightly_smiling_face:

Try downloading this driver and follow these instructions.
Let me know where you get stuck in the process :thinking:

2 Likes

I tried that too. I just get a message that tells me that I already have the most up to date drivers

That sounds like you should be all set on the driver side.
At what point of the process do you have issues, what exactly isn’t working? :thinking:

I remember when I was installing ADB the main obstacle was with the Windows drivers. I got everything working by going to Windows Settings (Home) > Update and Security
image

View all optional updates
image
and then, if there’s an option mentioning Android, tick the box and click “Download and install”.
image
You’ll want to reboot the PC.

2 Likes

Thanks ! Now when I type “adb devices” it recognizes it !

Okay so, I’m following the guide above, but when I type the “adb shell settings put system ringtone” I just get “canonical isn’t recognized as an internal command” (something like that, my PC is in French). But at the same time it seems to be working, because now my ringtone is '“Draco” and not “cut_temp.wav” and when I try to select a ringtone it doesn’t crash. So it works, finally \o/ Thanks to you two !

4 Likes