Я создал диалоговое окно для выбора звука уведомления для приложения. Я запрашивая звуки уведомления, получая курсор из RingtoneManager:Воспроизведение определенного звукового уведомления
RingtoneManager manager = new RingtoneManager(this);
manager.setType(RingtoneManager.TYPE_NOTIFICATION);
Cursor cursor = manager.getCursor();
Я тогда хранить полный путь к нему конкатенации звукового тракта с именем.
Это прекрасно работает, когда я установил выбранный звук как звук уведомления, но я не могу получить медиа-плеер, чтобы воспроизвести его по выбору:
MediaPlayer mp = MediaPlayer.create(this, Uri.parse(path));
Это Выдает IllegalStateException:
java.lang.IllegalStateException: Unknown URL: content://media/internal/audio/media/Capella
Любые идеи о том, как получить правильный путь к определенному звуку уведомления?
какое значение содержит переменная path? – Umair
@ Darkie "content: // media/internal/audio/media/Capella" –
Я думаю, что после мультимедиа/вы должны получать идентификатор трека, а не имя, потому что когда вы получаете доступ к пути, он дает вам путь трека с идентификатором не с именем. вы должны проверить это ... – Umair