收到新邮件时如何播放媒体文件?

时间:2012-05-26 15:13:15

标签: android notifications message

我想创建一个Android应用程序,以便在收到来自特定发件人的消息时播放录制的声音片段,因此我将此代码放入我的smsReceiver(Broadcastreceiver)

NotificationManager nm = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);

     Notification notification = new Notification();        
     notification.sound = Uri.parse("android.resource://com.example.newgps/raw/calmpiano");

 nm.notify(0, notification);  

但它发挥了声音的一部分。我能做些什么来解决它。

1 个答案:

答案 0 :(得分:0)

您不需要将\raw附加到资源URI。在运行时,所有内容都被编译到一个带有ID的目录中,这意味着调用R.raw.*是指原始资源,即使所有资源都在同一目录中。

notification.sound = Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.calmpiano);

您还可以使用notification.default指定一些额外设置,但不要使用DEFAULT_SOUND 。如果定义了默认声音,它将覆盖自定义声音。