3

目前我正在设计一个 iOS 应用程序,它将通过网络连接到音乐流并向用户播放音频。

我有一个简单的设置,一个按钮可以启动流,一个 UIwebview 连接到流。当我运行应用程序(在 iPhone 上,而不是模拟器上)时,该按钮可以正常工作并启动 Quicktime 播放器以开始播放音频。在这个屏幕上暂停和播放也很有魅力。

但是,我希望我的用户能够启动流、关闭手机(让显示器休眠)并继续收听流。然而,睡眠显示器会淡出音频,直到它停止播放。

我已经尝试进入应用程序的 PList 文件,就像其他一些人告诉我的那样在线操作并添加了“必需的背景模式”字段,并将应用程序使用 Airplay 播放音频或流式传输音频/视频添加到 0 数组字段和应用程序下载内容从网络到 1 数组字段。

(“应用程序播放音频”不是通过自动完成提供的,即使这是让流工作的短语。相反,我将其保留为“应用程序播放音频或使用 Airplay 流式传输音频/视频”,然后再尝试另一种方式多一点运气)

但是,当显示器进入睡眠状态时,这些都不允许音频继续播放。任何人都可以就如何使其工作提出建议吗?

4

3 回答 3

3

在 Xcode 5.1 中,除了 Plist 之外,还有另一个地方需要设置,Target -> Capabilities -> Background Modes... 这似乎不仅仅影响 plist,尽管我对此并不完全确定。

于 2014-04-10T00:18:31.730 回答
2

看这里的示例代码https://github.com/jsagorin/iOSBackgroundAudio

在这里.. 一些解释(如何在 app-info.plist 文件中设置 UIBackgroundModes 键,设置音频会话类别等)http://www.sagorin.org/ios-playing-audio-in-background-audio/

于 2013-10-10T12:51:06.697 回答
1

只需在 plist 中输入

应用程序不需要后台模式并将其值设置为“NO”并将后台模式添加到 VOIP

于 2013-10-10T04:02:33.023 回答