2015-10-19 2 views
1

Насколько я знаю, чтобы установить звук в качестве мелодии звонка, он должен быть вставлен в MediaStore. Для записи в MediaStore требуется разрешение WRITE_EXTERNAL_STORAGE. Но ... есть ли способ установить звук (например, файл MP3 во внешнем хранилище, например) в качестве мелодии звонка без разрешения WRITE_EXTERNAL_STORAGE?Установить звук в качестве мелодии звонка без разрешения WRITE_EXTERNAL_STORAGE?

+0

Любое решение до сих пор? – Ton

ответ

1

Вы должны использовать Android RingtoneManager. Существует метод, называемый [setActualDefaultRingtoneUri] (http://developer.android.com/reference/android/media/RingtoneManager.html#setActualDefaultRingtoneUri(android.content.Context, INT, android.net.Uri)):

государственной статической силы setActualDefaultRingtoneUri (контекст Контекст, внутр типа, Uri ringtoneUri)

Устанавливает Uri звука по умолчанию для данного типа звука.

Параметры

  • контекст: контекст используется для запроса.
  • тип: тип, звук по умолчанию которого должен быть установлен. Один из TYPE_RINGTONE, TYPE_NOTIFICATION, или TYPE_ALARM
  • ringtoneUri: a Uri, указывающий на установленный по умолчанию звук.

Вы можете получить Uri файла с помощью File.toURI().

+0

Спасибо. Он работает, но когда я перехожу к настройкам звука -> звуку уведомлений, вместо того, чтобы видеть, что мой звук выбран, я вижу «неизвестно» и звук не выбран. –

+0

@SergioViudes, такая же проблема здесь, я вижу неизвестный звук имени, и даже звуковой файл не существует в списке мелодий звонка, что вы сделали для этого, пожалуйста, поделитесь им. –

+0

Я не решил. Любая помощь будет оценена –

Смежные вопросы