ios - 如何播放可通过 iPhone 上的屏幕锁定按钮关闭的音频

标签 ios audio

我正在 iPhone 上开发 VOIP 应用程序,但在执行传入铃声功能时遇到一些问题。我希望传入的铃声可以在后台和手机锁定状态下播放。并且可以通过 iPhone 的硬件按钮来消除铃声,类似于 native 电话调用行为。
1. 当用户按下屏幕锁定时,铃声应静音 2. 当静音按钮打开时,铃声应静音。

我无法通过将 Audio Session 类别查看为播放模式或环境来解决这个问题。播放类别不支持屏幕锁定和静音按钮。环境类别不支持背景音频。有人可以帮忙吗?

最佳答案

为了使手机上音量按钮更改时的音频静音,您需要注册以下通知:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(volumeChangedDuringDisconnectionAlert:) name:@"AVSystemController_SystemVolumeDidChangeNotification" object:nil];

然后在您的选择器功能中,要么使警报静音,要么用它做任何您想做的事情。

至于用户解锁屏幕时静音音频,您很可能必须在 - (void)applicationWillEnterForeground:(UIApplication *)application 中选择它- (void)applicationDidBecomeActive:(UIApplication *)application 应用程序委托(delegate)内部的函数。

如果您有疑问,请告诉我。

关于ios - 如何播放可通过 iPhone 上的屏幕锁定按钮关闭的音频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14249857/

相关文章:

ios - 无法通过片假名(日文)1 字节和 2 字节(ji 和 `゙)搜索

ios - 如何仅用两根手指滑动滚动 UIScrollView?

javascript - 由于 “Invisible [Flash] content is always blocked.”,jplayer的Flash后备广告无法在Chrome中使用

c# - 使用 .net 多次异步播放 wav 文件

ios - 来自 iOS 的实时流媒体音频

javascript - 禁用背景音乐控制

ios - 崩溃问题 "Device states 100% In Background"

ios - Xcode 7.1 的应用程序传输安全

ios - 在 Xcode IOS 中,我可以在应用程序中创建一个按钮,按下该按钮会进行正常的屏幕锁定吗?

python-3.x - scipy.io.wavfile.read()返回什么?