目前正在我的应用程序中实现本地通知,到目前为止,它的工作方式完全符合预期,但在尝试用声音文件替换默认声音时,当通知触发时我不再听到任何声音,我无法弄清楚原因。< / p>
本地通知的代码:
public void GetLocalNotification(string message)
{
Android.Net.Uri sound = Android.Net.Uri.Parse("android.resource://" + Application.Context.PackageName + "/" + Resource.Raw.alarm);
// Build the notification:
NotificationCompat.Builder builder = new NotificationCompat.Builder(Application.Context)
.SetAutoCancel(true) // Dismiss from the notif. area when clicked
.SetContentTitle("Notification") // Set its title
.SetSmallIcon(Resource.Drawable.icon) // Display this icon
.SetDefaults(1 | 2) //Sets sound and vibration
.SetSound(sound)
.SetContentText(String.Format(
message)); // The message to display.
// Finally, publish the notification:
NotificationManager notificationManager =
(NotificationManager)Application.Context.GetSystemService(Context.NotificationService);
notificationManager.Notify(ButtonClickNotificationId, builder.Build());
}
答案 0 :(得分:2)
尝试设置此行:.SetDefaults(1 | 2) //Sets sound and vibration
到.SetDefaults(0)
,这应该代表所有&#39;。
我已经看过这样的情况,当你将它设置为0时,它只发出声音。我可以说为什么,我不知道诚实,但它确实有效。
答案 1 :(得分:0)
@Gerald Versluis :谢谢,但注意到.SetDefaults(0)
会增加声音,但同时也会消除振动。因此,要添加此问题,请.SetDefaults(0 | 2)
,将2设为(int)NotificationDefaults.Vibrate
。
因此,我添加声音和振动的解决方案是:
.SetDefaults(0 | (int)NotificationDefaults.Vibrate)