概述
最近项目里用到系统铃声的,写完就分享给大家。
1.获取系统铃声:
public ArrayList<Ringtone> listRingTone = new ArrayList<>();
void init(){
RingtoneManager ringtoneManager= new RingtoneManager(this); // 铃声管理器
Cursor cursor = ringtoneManager.getCursor(); //获取铃声表,根据表名取值
int count = cursor.getCount(); //获取铃声列表数量
for(int i = 0 ; i < count ; i ++){
listRingTone.add(ringtoneManager.getRingtone(i));
}
}
2.播放选中的铃声
listRingTone.get(x).setLooping(true);//是否循环播放,默认值为true,API28或以上才能操作
listRingTone.get(x).setVolume(1.0f);//设置音量大小,值范围0~1,API28或以上才能操作
if(!listRingTone.get(x).isPlaying()){//不在播放状态
listRingTone.get(x).play();
}
3.停止播放
if(listRingTone.get(x).isPlaying()){
listRingTone.get(x).stop();
}
API28以下的没有停止播放,可以自己写一个自动不放三秒然后停止
if (!ringtone.isPlaying()) {//不在播放状态
ringtone.play();
}
new Thread() {
@Override
public void run() {
super.run();
try {
Thread.sleep(3000);//休眠3秒
} catch (InterruptedException e) {
e.printStackTrace();
}
if(ringtone.isPlaying()){
ringtone.stop();
}
}
}.start();
最后
以上就是朴实水杯为你收集整理的Android获取系统铃声与播放的全部内容,希望文章能够帮你解决Android获取系统铃声与播放所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复