当有人呼叫用户时,我必须在我的应用中播放通知声音。当我将应用程序置于最小化状态时,推送通知会显示我已分配给它的自定义声音。但是当我的应用程序处于前台时,相同的自定义音量级别不会跟随振铃声级别。当app在前台时,我已经使用音频服务播放声音。但是音频服务播放的通知音量和音量的音量水平存在差异。
答案 0 :(得分:0)
你是对的,这两者之间有意的区别。这是交易......远程通知的声级由“振铃和警报”驱动。音量水平。另一方面,应用内播放的音频受到音乐和音频的影响。音量水平。
注意:如果您想在“铃声和警报”中播放声音。音量级别你可以使用AudioToolbox framework
并发出系统/警报声音(但请记住,这只能播放短音长达30秒)
答案 1 :(得分:0)
我已使用AudioServicesPlayAlertSound
播放SystemSound
解决了这个问题。我做错了的是用来播放SystemSound
的方法。有两种方法可用于SystemSound
,AudioServicesPlaySystemSound
和AudioServicesPlayAlertSound
。我正在使用AudioServicesPlaySystemSound
,它不遵循远程通知所使用的音量级别。所以现在我正在使用AudioServicesPlayAlertSound
,它在与远程通知相同的级别播放声音。