【问题标题】:Android Random Alarm Tone安卓随机闹钟铃声
【发布时间】:2016-06-30 20:37:09
【问题描述】:

我目前正在开发一个播放随机警报音的警报应用程序。我已经能够从铃声对话框加载铃声,但我正在考虑直接从铃声目录加载随机铃声。我将如何实现这一目标?

【问题讨论】:

    标签: java c# android mobile alarm


    【解决方案1】:

    您可以查询设备中可用的铃声:

    RingtoneManager ringtoneMgr = new RingtoneManager(this);
    ringtoneMgr.setType(RingtoneManager.TYPE_ALARM);
    Cursor alCursor = ringtoneMgr.getCursor();
    

    这个 alCursor 将包含可用的铃声 URI。现在遍历它们并构建一个 URI 数组:

    Uri[] alarms = new Uri[alCursor.getCount()];
    while(alCursor.moveToNext()) {
        int pos = alCursor.getPosition();
        alarms[pos] = ringtoneMgr.getRingtoneUri(pos);
    }
    alCursor.close();
    

    现在,只需在 0-alCursor.getCount() 范围内生成一个随机数,从警报数组中取出该铃声并播放它。

    Random r = new Random();
    int randNum = r.nextInt(alCursor.getCount());
    Ringtone ringtone = RingtoneManager.getRingtone(this, alarms[randNum]);
    ringtone.play();
    

    这是实现目标的简单方法。希望能帮助到你。谢谢。

    【讨论】:

    • 像魅力一样工作!非常感谢 =)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多