我正在 iPhone 上开发一个 VOIP 应用程序,但在执行传入铃声功能时遇到了一些麻烦。我希望来电铃声可以在后台和手机锁定状态下播放。振铃器可以通过 iPhone 的硬件按钮消除,类似于原生电话呼叫行为。
1.当用户按下屏幕锁定时,铃声应该被静音 2.当静音按钮打开时,铃声应该被静音。
我无法通过将音频会话类别设置为播放模式或环境来解决问题。播放类别不支持屏幕锁定和静音按钮。环境类别不支持背景音频。任何人都可以帮忙吗?
为了使手机上音量按钮更改的音频静音,您需要注册以下通知:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(volumeChangedDuringDisconnectionAlert:) name:@"AVSystemController_SystemVolumeDidChangeNotification" object:nil];
然后在您的选择器功能中,使您的警报静音或做任何您想做的事情。
至于在用户解锁屏幕时静音音频,您很可能必须在应用程序委托中的- (void)applicationWillEnterForeground:(UIApplication *)application
or函数中选择它。- (void)applicationDidBecomeActive:(UIApplication *)application
如果您有任何问题,请告诉我。