【问题标题】:want to keep AVPlayer playing when application goes to background想要在应用程序进入后台时继续播放 AVPlayer
【发布时间】:2014-01-15 06:07:52
【问题描述】:

我必须使用 avplayer 播放 mp3 文件,但是当我进入后台时它会停止,我如何让它在后台状态下播放。任何建议将不胜感激。 谢谢。

【问题讨论】:

标签: iphone ios7 xcode4 avplayer avaudiosession


【解决方案1】:

在您的 plist 中只需添加一种方法,例如:-

或者在代码中:

<key>UIBackgroundModes</key>
<array>
    <string>audio</string>
</array>

【讨论】:

  • 图像已损坏。
  • 我认为您这边的网络速度很慢,请尝试重新加载页面。
【解决方案2】:

要在后台播放 AVPlayer,您必须按照以下步骤操作:

1) to add "Required background modes" property in info.plist,with value "App plays audio or streams audio/video using AirPlay"

2)to import below in AppDelegate.h file:

 #import <AVFoundation/AVFoundation.h>
 #import <AudioToolbox/AudioToolbox.h>

3)in your AppDelegate.m ,
application didFinishLaunchingWithOptions this exactly like below:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{
// Override point for customization after application launch.

[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];

return YES;
}

【讨论】:

    【解决方案3】:

    您应该阅读Technical Q&A 1668在 iOS 上使用 AV Foundation 在后台播放媒体。在其中,Apple 提供了如何使用 AVPlayer 在后台播放媒体的示例,并讨论了您可能遇到的潜在问题。

    【讨论】:

      【解决方案4】:

      来自我在评论中发布的文档:

      连续播放或录制音频的应用(即使应用在后台运行时)可以注册以在后台执行这些任务。您可以从 Xcode 项目的 Capabilities 选项卡的 Background mode 部分启用音频支持。 (您还可以通过在应用的 Info.plist 文件中包含带有音频值的 UIBackgroundModes 键来启用此支持。)在后台播放音频内容的应用必须播放可听内容而不是静音。

      ...

      当 UIBackgroundModes 键包含音频值时,系统的 媒体框架会自动阻止相应的应用程序 当它移动到后台时被暂停。只要是 播放音频或视频内容或录制音频内容,应用程序 继续在后台运行。但是,如果录制或播放 停止,系统暂停应用程序。

      App States and Multitasking Guide

      【讨论】:

      • 很惊讶这个五年前的答案今天得到了赞成。
      猜你喜欢
      • 1970-01-01
      • 2017-10-12
      • 2014-01-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多