Ios 目标C:如何让AVPlayer在后台继续播放
我知道有很多像我这样的问题,但都不管用 对我来说 我试图在退出应用程序时让Ios 目标C:如何让AVPlayer在后台继续播放,ios,objective-c,swift,avplayer,Ios,Objective C,Swift,Avplayer,我知道有很多像我这样的问题,但都不管用 对我来说 我试图在退出应用程序时让AVPlayer继续播放,我实现了以下Singleton类: .h文件: #import <AVFoundation/AVFoundation.h> #import <Foundation/Foundation.h> @interface LiveStreamSingleton : NSObject<AVAudioPlayerDelegate>{ } +(LiveStreamSin
AVPlayer
继续播放,我实现了以下Singleton类
:
.h文件:
#import <AVFoundation/AVFoundation.h>
#import <Foundation/Foundation.h>
@interface LiveStreamSingleton : NSObject<AVAudioPlayerDelegate>{
}
+(LiveStreamSingleton *)sharedInstance;
-(void)playStream;
-(void)stopStream;
-(bool)status;
@end
我已经设置了[[UIApplication sharedApplication]beginReceivingRemoteControlEvents]代码>用于在后台播放,但我在我真正的ipad上尝试过,它不起作用
有什么想法吗?在属性列表(.plist)文件中添加一个名为所需背景模式的键
如下图所示
并在中添加以下代码
目标-C
AppDelegate.h
#import <AVFoundation/AVFoundation.h>
#import <AudioToolbox/AudioToolbox.h>
敏捷的
希望有帮助。Niiice!非常感谢,不过只有一个问题,[[AVAudioSession sharedInstance]setDelegate:self]
selfDelegate已被弃用,我可以修复此问题吗?@FadiObaji我认为不需要它。你只需要设置活动。删除该行(Y)@FadiObaji Great!:)
#import <AVFoundation/AVFoundation.h>
#import <AudioToolbox/AudioToolbox.h>
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];
[[AVAudioSession sharedInstance] setActive:YES error:nil];
[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
import AVFoundation
import AudioToolbox
class AppDelegate: UIResponder, UIApplicationDelegate
{
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool
{
do {
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
try AVAudioSession.sharedInstance().setActive(true)
UIApplication.sharedApplication().beginReceivingRemoteControlEvents()
}
catch {
}
}
}