相关疑难解决方法(0)

当我暂停AVAudioPlayer时,为什么锁屏音频控件会消失?

我正在使用AVAudioPlayer的一个实例来播放音频文件.该应用程序配置为在后台播放音频,并设置适当的音频会话.我也成功接收了遥控事件.

这是代码:

#import "ViewController.h"
#import <AVFoundation/AVFoundation.h>

@interface ViewController ()

@property (nonatomic) AVAudioPlayer *player;

@end

@implementation ViewController

@synthesize player;

- (BOOL)canBecomeFirstResponder { return YES; }

- (void)viewDidLoad
{
    [super viewDidLoad];

    // Turn on remote control event delivery

    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];

    // Set ourselves as the first responder

    [self becomeFirstResponder];

    // Set the audio session

    AVAudioSession *audioSession = [AVAudioSession sharedInstance];
    NSError *setCategoryError = nil;
    BOOL success = [audioSession setCategory:AVAudioSessionCategoryPlayback error:&setCategoryError];
    NSError *activationError = nil;
    success = [audioSession setActive:YES error:&activationError];

    // Play an …
Run Code Online (Sandbox Code Playgroud)

audio objective-c avaudioplayer ios uievent

17
推荐指数
1
解决办法
6718
查看次数

锁定屏幕上的AVAudioPlayer

我使用AVAudioPlayer(不是AVPlayer)实现了一个音频播放器.我可以使用以下方法处理远程控制事件.它的工作原理相当好的,到目前为止,但是我看到两个以上subtypes这些事件:UIEventSubtypeRemoteControlEndSeekingForwardUIEventSubtypeRemoteControlEndSeekingBackward.

- (void)remoteControlReceivedWithEvent:(UIEvent *)event {
    //if it is a remote control event handle it correctly
    if (event.type == UIEventTypeRemoteControl)
    {
        if (event.subtype == UIEventSubtypeRemoteControlPlay)
        {
            [self playAudio];
        }
        else if (event.subtype == UIEventSubtypeRemoteControlPause)
        {
            [self pauseAudio];
        }
        else if (event.subtype == UIEventSubtypeRemoteControlTogglePlayPause)
        {
            [self togglePlayPause];
        }
        else if (event.subtype == UIEventSubtypeRemoteControlBeginSeekingBackward)
        {
            [self rewindTheAudio]; //this method rewinds the audio by 15 seconds.
        }
        else if (event.subtype == UIEventSubtypeRemoteControlBeginSeekingForward)
        {
            [self …
Run Code Online (Sandbox Code Playgroud)

avaudioplayer ios avaudiosession background-audio mpnowplayinginfocenter

7
推荐指数
1
解决办法
5308
查看次数