Android推送通知 - 解析JSON通知标记名称以获取原始文件(资源ID或Uri)

时间:2015-06-09 07:40:18

标签: android json push-notification android-notifications

我在onMessage()方法中从GCM收到通知,作为下面给出的json字符串中的intent extraData: -

"data": { "message":"Welcome Message","sound_file":"sound1.mp3"}

我的sound1.mp3中有相同的文件名res/raw/sound1.mp3我需要在Notification.Sound中分配。那么我是否有任何机制可以将String转换为ResourceId或访问ResourceIdUri以分配Notification.Sound

我想这样做是因为会有多个文件,并且任何随机sound_file名称都会出现在通知消息中。

  

注意: - 我可以使用if else检查sound_file我存储的文件   我已经实现的raw文件夹。但我只是想知道可以做我所问的那个???

1 个答案:

答案 0 :(得分:0)

int resourceId = context.getResources("sound1.mp3", "raw", context.getPackageName());
Uri resourceUri = Uri.parse("android.resource://" + context.getPackageName() + "/" + resourceId);