【问题标题】:Remote Notification volume level differs from sound played in app远程通知音量级别与应用程序中播放的声音不同
【发布时间】:2015-12-08 05:11:40
【问题描述】:

当有人呼叫用户时,我必须在我的应用中播放通知声音。当我将应用程序置于最小化状态时,推送通知会显示我分配给它的自定义声音。但是当我的应用程序处于前台时,相同的自定义音量级别不会跟随振铃声音级别。当应用程序处于前台时,我使用音频服务播放声音。但是通知声音和音频服务播放的相同声音的音量不同。

【问题讨论】:

    标签: ios


    【解决方案1】:

    您说的很对,这两者之间存在预期差异。这是交易......远程通知的声音级别由“铃声和警报”音量级别驱动。而另一方面,应用内播放的音频受“音乐和音频”音量级别的影响。

    注意:如果您想以“铃声和警报”音量播放声音,您可以使用 AudioToolbox framework 并播放系统/警报声音(但请记住,这只会播放最长 30 秒的短声音)

    这里是它的 Apple 文档:https://developer.apple.com/library/prerelease/ios/documentation/AudioToolbox/Reference/SystemSoundServicesReference/index.html#//apple_ref/c/func/AudioServicesPlayAlertSound

    【讨论】:

    • 感谢回复。。其实我已经解决了这个问题,只是没时间在这里更新。正如你所说,我已经在使用 SystemSound 来播放自定义声音。但是我做错的是用来播放SystemSound的方法。有两种方法可用于播放 SystemSound,即 AudioServicesPlaySystemSound 和 AudioServicesPlayAlertSound。我使用的 AudioServicesPlaySystemSound 不遵循远程通知使用的音量级别。所以现在我正在使用 AudioServicesPlayAlertSound,它播放与远程通知相同级别的声音。
    【解决方案2】:

    我已经解决了这个问题,使用AudioServicesPlayAlertSound 玩SystemSound。我做错的是以前玩SystemSound的方法。有两种方法可以用来播放SystemSound,即AudioServicesPlaySystemSound和AudioServicesPlayAlertSound。我使用的是AudioServicesPlaySystemSound,它不遵循远程通知使用的音量级别。所以现在我使用AudioServicesPlayAlertSound,它播放与远程通知相同级别的声音。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-18
      • 1970-01-01
      • 1970-01-01
      • 2015-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多