0

ストリーミングで音楽を​​再生する iOS アプリがあります。iPhone でうまく動作します。しかし、私はiPadに問題があります。私の問題は、曲を再生すると、画面が自動ロックされた後、現在の曲は再生されますが、次の曲は再生されません。デバイスを手動でロックすると、次の曲が正しく再生されます。audioPlayerDidStartPlayingデリゲートが実行されたときにログに記録するので、実行されたことはわかっていますが、何も聞こえません。これはiPadのログから取得しました。

Oct 31 13:48:41  mediaserverd[1891] <Notice>: 13:48:41.634 NOTE:      [0x4150000] <aqme> MEMixerChannel.cpp:777: EnableProcessor: EQ not supported for 2e+04 Hz
Oct 31 13:48:44  mediaserverd[1891] <Notice>: 13:48:44.331 NOTE:      [0x4150000] <aqme> MEMixerChannel.cpp:777: EnableProcessor: EQ not supported for 2e+04 Hz
Oct 31 13:48:44  mediaserverd[1891] <Warning>: 13:48:44.334 [0x4150000] TranslateCMSessionErrorCode: AudioSessionSetClientPlayState: WARNING translating CMSession error: -16980
Oct 31 13:48:44  mediaserverd[1891] <Error>: 13:48:44.335 ERROR:     [0x4150000] AQServer.cpp:150: SetSessionPlayState: AudioQueue: Error '!pla' from AudioSessionSetClientPlayState(0x76358a)

私は自分のアプリデリゲートに持っています:

NSError *sessionError = nil;
[[AVAudioSession sharedInstance] setActive:YES error:NULL];
[[AVAudioSession sharedInstance] setDelegate:self];
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&sessionError];

// Change the default output audio route
UInt32 doChangeDefaultRoute = 1;
AudioSessionSetProperty(kAudioSessionProperty_OverrideCategoryDefaultToSpeaker,
                            sizeof(doChangeDefaultRoute), &doChangeDefaultRoute);

また、info.plist ファイルの「必要なバックグラウンド モード」プロパティを「アプリがオーディオを再生する」に定義しました。

iPhoneでは正常に動作していますが、私の問題はどこにありますか?

よろしくお願いします。

4

1 に答える 1

1

リモートコントロールイベントに登録してみてください...

[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];

関係ないようですが、アプリがリモコンを取得していない場合、AVPlayer や他のプレイヤーのステータスは再生時に失敗するようです。

アプリのデリゲートで、次のようにリモート コントロールに応答します。

-(void)remoteControlReceivedWithEvent:(UIEvent *)event
{
    switch(event.subtype)
    {
        case UIEventSubtypeRemoteControlPause:
            [self pause];
            break;
        case UIEventSubtypeRemoteControlPlay:
            [self play];
            break;

    }
}
于 2013-12-05T16:09:08.297 に答える