我的一个客户提了一个这样的需求:当收到的短信内容中含有“SOS”字符串时,提示音改为警报音(客户提供的是mp3格式的声音)。这里就涉及到如何添加自定义铃声的方法:
1、先把铃声拷贝到res/raw/目录下面,如果没有raw目录,需新建这个目录。
2、在代码中调用此铃声,把此铃声转为Uri,方便Notification(通知)调用,转Uri的方法是:
Uri soundUri = Uri.parse("android.resource://" + context.getPackageName() + "/" + R.raw.siren);
其中,siren就是自定义的铃声,调用时,可不添加后缀(.mp3),只要文件名即可(siren)。
3、把第2步中获取的Uri,赋给Notification.Builder类的变量(如noti):
noti.setSound(soundUri);
以上都是经本人验证通过,欢迎一起讨论