我在我的应用程序中实现了 Matt Gallagher 的 Audiostreamer 类,它在 ios4 中运行良好。但是当我切换到iOS5时,后台播放在那里不起作用。
我已将 UIBackground 模式和应用程序不在后台 plist 值中运行添加到我的应用程序。所以我认为问题是另外一回事。
我在我的应用程序中实现了 Matt Gallagher 的 Audiostreamer 类,它在 ios4 中运行良好。但是当我切换到iOS5时,后台播放在那里不起作用。
我已将 UIBackground 模式和应用程序不在后台 plist 值中运行添加到我的应用程序。所以我认为问题是另外一回事。
它不会在模拟器中工作,你不在模拟器中是吗?
@j_mcnally iOS5 模拟器支持后台播放。
@thoughtbreaker 在 Matt Gallagher 中有一些流程。您的音频是否根本不在后台播放,或者在播放完一首曲目后停止。
如果它根本没有在后台播放,则可能存在与缓冲相关的问题......您应该在您的 audioStateChange 方法中使用后台过期处理程序,但仅当应用程序处于后台时。
UIApplication *app = [UIApplication sharedApplication];
UIBackgroundTaskIdentifier bgTask = [app beginBackgroundTaskWithExpirationHandler:nil]
}];
您可以通过在 applicationDidEnterBackground 方法中设置全局标志来检查后台模式
还要使您的 audioStart Playing 方法中的处理程序无效
[app endBackgroundTask:bgTask];