安卓:获取默认或当前设置的闹钟声音/铃声?

7
我使用了许多词汇和语句进行搜索,但无论如何都找不到任何关于这方面的信息。 那么,无论如何:我该如何获取默认或当前设置的闹钟音乐/铃声/声音(默认应用程序)? 比如说,如果我每天早上被默认闹钟应用程序播放的歌曲:Song#1 唤醒,我该如何在我的自定义应用程序中获取 Song#1 ? 我正在尝试创建自己的闹钟应用程序,但我不想设置用户可能不喜欢的音调。 也许有一种方法可以打开默认的闹钟铃声选择器/浏览器,并让用户在我的自定义应用程序中设置它?还是所有这些都需要自定义编码? 如果以上都不可行-我该如何在我的应用程序中播放默认的闹钟声音?
1个回答

13
Uri alarmTone = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM);
Ringtone ringtoneAlarm = RingtoneManager.getRingtone(getApplicationContext(), alarmTone);
ringtoneAlarm.play();

1
谢谢,这正是我想要的。我还添加了: ringtoneAlarm.setStreamType(AudioManager.STREAM_ALARM); 这使得它即使在静音模式下也能播放警报声。 - arleitiss
抱歉,有个小问题:我该如何停止从不同活动中播放的声音? - arleitiss
@arleitiss,你只需要在创建铃声闹钟的活动中保留它(可以通过将其传递给下一个活动或全局某个位置),然后调用stop()方法即可。根据意图,在生命周期的onPause()方法中调用stop()方法可能是一个好主意。 - Jay Snayder

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接