【问题标题】:android cannot get sound to play from a notificationandroid无法从通知中播放声音
【发布时间】:2011-05-03 11:04:19
【问题描述】:

我有以下代码来生成通知。通知出现但没有声音。我有以下代码可以打开声音

notification.defaults |= Notification.DEFAULT_SOUND;

代码清单

    NotificationManager manager = (NotificationManager)     gContext.getSystemService(Context.NOTIFICATION_SERVICE);

    Notification notification = new Notification(R.drawable.icon, "Teeth Alert", System.currentTimeMillis());
    PendingIntent contentIntent = PendingIntent.getActivity(gContext, 0, new Intent(gContext, NotifyMessage.class), 0);
    notification.setLatestEventInfo(gContext, "Your teeth appoitmernt:", "Date:", contentIntent);

    notification.defaults |= Notification.DEFAULT_SOUND;
    notification.defaults |= Notification.DEFAULT_LIGHTS;

    manager.notify(1,notification);
    cDates.SetAlarm(i);

泰德

【问题讨论】:

    标签: android audio notifications


    【解决方案1】:

    你应该尝试设置

    notification.defaults = Notification.DEFAULT_SOUND | Notification.DEFAULT_LIGHTS;
    

    或明确设置:

    notification.sound = 
        RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
    

    【讨论】:

    • 感谢您的评论,它不起作用。我发现了一些使用通知振动的代码,它在manefest文件中设置了一行以确保安全。也许我应该做同样的事情,但我找不到任何关于如何做的信息,任何想法?泰德
    • 没有使用声音的权限,只能用于振动。您确定没有其他通知使用1 作为他们的id?最好在此处使用显示的文本/tickertext 的 id。
    • Notification.DEFAULT_SOUNDNotification.DEFAULT_ALL 都为我工作。此外,我不需要振动权限来使用DEFAULT_VIBRATE
    【解决方案2】:

    不确定你是否解决了这个问题,但我遇到了同样的问题,这是因为你有

    notification.defaults |= Notification.DEFAULT_SOUND;
    notification.defaults |= Notification.DEFAULT_LIGHTS;
    

    但你需要先分配它像

    notification.defaults = Notification.DEFAULT_SOUND;
    notification.defaults |= Notification.DEFAULT_LIGHTS;
    

    或者更简单的@rekaszeru 说的

    notification.defaults = Notification.DEFAULT_SOUND | Notification.DEFAULT_LIGHTS;
    

    【讨论】:

      猜你喜欢
      • 2012-01-14
      • 1970-01-01
      • 2012-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多