В зависимости от ваших потребностей, есть несколько вариантов вызова экрана настроек «Мелодии вызова» из вашего приложения.
Если вы хотите вызвать экран фактических настроек, который обычно доступен через системные настройки - позволяя вашему пользователю изменять настройки универсального рингтона телефона через ваше приложение - вы можете использовать константу ACTION_SOUND_SETTINGS
из класса android.provider.Settings
создать новый Намерение начать настройку звука.
startActivityForResult(new Intent(android.provider.Settings.ACTION_SOUND_SETTINGS), 0);
Если вы хотите выбрать собственную мелодию звонка для использования в вашем приложении, вам нужно добавить RingtonePreference
в ваш файл определения preferences.xml
, например:
<RingtonePreference
android:key="alerts_ringtone"
android:title="Select ringtone"
android:showDefault="true"
android:showSilent="true"
android:ringtoneType=""
/>
Вы сможете получить URI для выбранного предпочтения в приложении по умолчанию SharedPreferences
, используя alerts_ringtone
в качестве ключа.
Последний метод использует класс PreferenceActivity
для размещения параметров предпочтений. Я не буду описывать это подробно здесь, поскольку документация Android имеет хорошую рецензию и некоторый пример кода.