2

オーディオはスピーカーから再生され、受信機 (ボタン付き) からも再生されます。最初は受信機から音を出そうとしています。(iOS 3.2に対応させたい)

[super viewDidLoad]; の直後に私が持っているものは次のとおりです。

  [[AVAudioSession sharedInstance] setDelegate: self];
    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error: nil];

    // UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
    UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_None;
    AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute,sizeof (audioRouteOverride),&audioRouteOverride);

  [[AVAudioSession sharedInstance] setActive:YES error:nil];

そして後で私が遊びを呼ぶとき:

NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle]
                                         pathForResource:lblText.text
                                         ofType:@"mp3"]];

    NSError *error;
    audioPlayer = [[AVAudioPlayer alloc]
                   initWithContentsOfURL:url
                   error:&error];
    if (error)
    {
        NSLog(@"Error in audioPlayer: %@", 
              [error localizedDescription]);
    } else {
        audioPlayer.delegate = self;

    }

    [self playAudio];

    MPVolumeView *volumeView = [[[MPVolumeView alloc] initWithFrame:[volumeSlider frame]] autorelease];
    [volumeSlider removeFromSuperview];
    [self.view addSubview:volumeView];

私は何を間違っていますか?

4

1 に答える 1

1

答えは次のとおりです。オーバーライドは kAudioSessionCategory_PlayAndRecord カテゴリにのみ適用され、AVAudioSessionCategoryPlayback には適用されません。

https://developer.apple.com/library/ios/#qa/qa1754/_index.html

于 2012-11-21T08:23:49.137 に答える