c# - 设备锁定或 sleep 时音频暂停 MonoTouch

标签 c# iphone ios5 xamarin.ios monodevelop

我开发了一个播放音乐轨道的音频应用程序。在 MonoTouch 的 info.plist 文件中,我添加了值为可听内容的数组属性 Required background modes。问题是,当按下设备的主页按钮、按下锁定按钮或设备自行进入休眠模式时,音频仍然停止播放,只有在设备解锁并再次将应用程序带到前台后才会恢复播放。

发生这些操作之一时,如何保持音频播放?除了 MonoTouch 的 info.plist 解决方案外,互联网提供的信息很少。

最佳答案

为了让这类应用在后台或屏幕锁定时播放音乐,您必须将其 Audio Session 类别设置为 AVAudioSessionCategoryPlayback:

NSError *setCategoryError = nil; 

[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayback error: &setCategoryError];

if (setCategoryError) {
    NSLog(@"couldn't setup audio session category!");
}

Apple 的 Audio Session Programming Guide 中有更多相关信息.

关于c# - 设备锁定或 sleep 时音频暂停 MonoTouch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11603230/

相关文章:

c# - 查找小于 2 个整数 a 和 b 的 2 个最大数的算法,它们可以被彼此整除

c# - Silverlight UserControl Parent 在其构造函数中始终为 Null。有什么建议吗?

c# - LINQPad中如何模拟ConfigurationManager

iphone - 如何更改标签栏项目的图标?

iphone - 播放短音效

iOS :put the id type as string to print

c# - 如何将字符串中的 [city] 替换为 [City]

iphone - UIWebView链接点击

ios5 - 如何将回调值传递给 JavaScript 形式的 iOS 原生代码?

c# - dSYM 文件夹和 mSYM 文件夹有什么区别?