使用小米推送,可以设置自定义铃声,根据小米文档:
private Message buildMessage() throws Exception {
String PACKAGENAME = "com.xiaomi.mipushdemo";
String messagePayload = “This is a message”;
String title = “notification title”;
String description = “notification description”;
Message message = new Message.Builder()
.title(title)
.description(description).payload(messagePayload)
.restrictedPackageName(MY_PACKAGE_NAME)
.passThrough(0) //消息使用通知栏方式
.notifyType(1)
.extra(Constants.EXTRA_PARAM_SOUND_URI, "android.resource://" + PACKAGENAME + "/raw/shaking")
.build();
return message;
}
【注意】:
铃声只能使用当前app内的资源,URI格式满足 android.resource://your packagename/XXX/XXX。
铃声文件放在Android app的raw目录下。
只适用于通知栏消息。
存储的声音文件需要有扩展名,但是不要把扩展名写在uri中
根据以上说明,需要调用URI资源:
Uri uri = Uri.parse("android.resource://com.example.myapp/raw/my_resource");
安卓系统下该文件目录是在 res/raw/shaking.mp3
而我们使用hbuilder在线打包时,目前没找到办法往项目根目录下的 res 目录里添加 raw 文件夹及里面的资源文件。
请教在线打包时,还有未解锁的创建 raw 目录的方法吗?
2***@qq.com
什么时候可以支持此功能
2018-03-17 12:23
maozai
后续已经过了两年了啊大哥
2020-03-25 15:35
chinahappybeer
目前有一个需求是希望接收到推送消息时播放“您有一条新消息”这样固定的自定义铃声,请问有好的解决方案吗?
目前采用的是个推,然后用的透传消息模板,当应用在前台时,收到推送消息会触发receive事件,在receive事件里播放本地的音频文件来实现自定义的铃声,但是当应用不在线时,收到消息会直接响系统通知铃声并进入通知栏,无法实现自定义的铃声播放,现在可以了吗?
2022-08-17 02:46