flymoo
flymoo
  • 发布:2017-07-06 14:34
  • 更新:2020-03-26 21:59
  • 阅读:4252

安卓版在线打包时,如何添加res/raw目录资源【小米推送自定义铃声】

分类:HBuilder

使用小米推送,可以设置自定义铃声,根据小米文档:

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 目录的方法吗?

2017-07-06 14:34 负责人:无 分享
已邀请:
DCloud_App_Array

DCloud_App_Array

暂时还不支持此功能,后续补充

  • 2***@qq.com

    什么时候可以支持此功能

    2018-03-17 12:23

  • maozai

    后续已经过了两年了啊大哥

    2020-03-25 15:35

  • chinahappybeer

    目前有一个需求是希望接收到推送消息时播放“您有一条新消息”这样固定的自定义铃声,请问有好的解决方案吗?

    目前采用的是个推,然后用的透传消息模板,当应用在前台时,收到推送消息会触发receive事件,在receive事件里播放本地的音频文件来实现自定义的铃声,但是当应用不在线时,收到消息会直接响系统通知铃声并进入通知栏,无法实现自定义的铃声播放,现在可以了吗?

    2022-08-17 02:46

DCloud_App_Array

DCloud_App_Array

uni-app已经支持上传uni原生插件,可以将要添加的资源封装为uni原生插件提交云端打包。
uni原生插件相关说明参考:https://ask.dcloud.net.cn/article/35428
uni原生插件提交云端打包参考:https://ask.dcloud.net.cn/article/35844

maozai

maozai - 小程序开发者

同问

maozai

maozai - 小程序开发者

好的,谢谢

该问题目前已经被锁定, 无法添加新回复