Цель выбора мелодии звонка - мелодия по умолчанию
Я хочу позволить пользователю выбрать мелодию уведомления для push-уведомлений моего приложения. Вот что я делаю:
Intent intent = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER);
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_SILENT, false);
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_DEFAULT, true);
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE, RingtoneManager.TYPE_NOTIFICATION);
startActivity(intent);
Это результат:
Все идет нормально. Однако на некоторых устройствах для всех производителей "звук уведомления по умолчанию" (первая запись в диалоговом окне выбора) указывает на мелодию вызова устройства, а не мелодию уведомления.
Когда пользователь нажимает "Звук уведомления по умолчанию", вместо звука уведомления по умолчанию воспроизводится мелодия вызова устройства по умолчанию.
Рингтоны установлены правильно в настройках устройства, Intent
Я огонь, кажется, забрать неправильный рингтон.
Есть идеи, что может пойти не так?
1 ответ
Это можно исправить, передав явно Uri
желаемой мелодии по умолчанию:
intent.putExtra(
RingtoneManager.EXTRA_RINGTONE_DEFAULT_URI,
RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION));