-2

重複の可能性:
AudioQueueStartが失敗する-12985

これは以前に一度尋ねられましたが、私は提案された答えの1つを実装しようとしました(何も受け入れられませんでした)、そして運がありませんでした。

pListで適切なバックグラウンドモードを設定したことを述べておく必要があります。

基本的に、didEnterRegionでサウンドを再生しようとしています。これが私のコードです:

- (void)locationManager:(CLLocationManager *)manager didEnterRegion:(CLRegion *)region
{
    NSLog(@"MapViewController - didEnterRegion");
    NSLog(@"MVC - didEnterRegion - region.radius = %f", region.radius);

    // code to get the url (removed for simplicity)

    AVAudioSession *audioSession = [AVAudioSession sharedInstance];

    [audioSession setCategory:AVAudioSessionCategoryPlayback error:nil];
    [audioSession setActive: YES error: nil];
    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];

    self.regionPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error];
    NSLog(@"self.regionPlayer.url = %@",self.regionPlayer.url);
    [self.regionPlayer play];   
}

フォアグラウンドで再生されるため、URLは問題ありません。コンソールログでも問題ないようです。

Sep 12 22:33:47 unknown MLTM[4995] <Warning>: MVC - didEnterRegion - region.radius = 250.000000
Sep 12 22:33:47 unknown MLTM[4995] <Warning>: url = file://localhost/var/mobile/Applications/EFD6A583-5685-4D7C-BF8E-C8CFEA9E0D03/MLTM.app/party%20mix%207.caf
Sep 12 22:33:47 unknown MLTM[4995] <Warning>: self.regionPlayer.url = file://localhost/var/mobile/Applications/EFD6A583-5685-4D7C-BF8E-C8CFEA9E0D03/MLTM.app/party%20mix%207.caf
Sep 12 22:33:48 unknown Console[4179] <Notice>: TestFlight: Team Token is recognized
Sep 12 22:33:48 unknown mediaserverd[44] <Error>: 22:33:48.087 <AudioQueueServer> AudioQueue: Error -12985 from AudioSessionSetClientPlayState(4995)

その最後の行は、オーディオを再生しようとしたときに表示されるエラーだと思います。

何か案は?

4

1 に答える 1

0

これを追加:

 register **UIBackgroundModes** in info.plist for background playing
 [[AVAudioSession sharedInstance] setDelegate: self];
 [[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryAmbient error: nil];

play-mp3-files-with-iphone-sdkリンクを参照

于 2012-09-13T05:58:29.767 に答える