Код: Выделить всё
alarmUri = RingtoneManager.getActualDefaultRingtoneUri(this, RingtoneManager.TYPE_ALARM);
try {
if(!mediaPlayer.isPlaying()) {
mediaPlayer.setDataSource(this, alarmUri);
AudioManager audioManager = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
mediaPlayer.setAudioStreamType(audioManager.STREAM_ALARM);
mediaPlayer.setLooping(true);
mediaPlayer.prepare();
mediaPlayer.start();
}
} catch(Exception e) {
Log.d(logtag,"Exception: " + e);
}
< /code>
Для затронутых пользователей добавлено следующее исключение: < /p>
Исключение java.io.ioexcept Это: Content: // Media/External/Audio/Media/11
Мне нужно, чтобы read_external_storage для воспроизведения звука, если использование URI содержит/внешнюю часть/? Или я упускаю что -то еще? Обычно я ожидаю, что Security Exception будет брошено, если бы разрешение было проблемой. < /p>
/e: Я мог бы воспроизвести ошибку на моем устройстве. Вот более подробный отчет об ошибках: < /p>
Исключение java.lang.securityexception: разрешение отрицания: чтение
com.android.providers.media.mediaprovider uri
content: // media /adio /adio /media от pid = 27158, uid = 1017. android.permission.read_external_storage, или
granturipermission () < /p>
< /blockquote>
Подробнее здесь: https://stackoverflow.com/questions/456 ... external-i