2016-05-25 9 views
0

私はsystemMusicPlayerを使ってアプリ内の曲を再生しています。オーディオファイルを別のオーディオファイルに再生するために一時停止する

ユーザーが今すぐプレイビューにnoiseButtonを押すと、それはnoiseButtonオーディオファイルを再生するために10秒間systemMusicPlayer曲のオーディオファイルを一時停止し、その後systemMusicPlayer曲のオーディオファイルにバックアップ選択されます。

systemMusicPlayerソングのオーディオファイルを一時停止してから取り戻すことができますが、noiseButtonに10秒間サウンドを再生させることができません。

  • 私は私が私が欠けているかわからないんだけどnoiseButtonファイル

を果たしているメソッドの前と後のNSLog銀杏だnoiseButtonオーディオファイルが

  • に動作します知っていますか?ここで

    は私のコードです:

    - (void)viewDidLoad { 
        [super viewDidLoad]; 
        // Do any additional setup after loading the view. 
        musicPlayer = [MPMusicPlayerController systemMusicPlayer]; 
        [self registerMediaPlayerNotifications]; 
    
        // Construct URL to sound file 
        NSString *path = [NSString stringWithFormat:@"%@/background-music-aac.caf", [[NSBundle mainBundle] resourcePath]]; 
        NSURL *soundUrl = [NSURL fileURLWithPath:path]; 
    
        // Create audio player object and initialize with URL to sound 
        _audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:soundUrl error:nil]; 
    } 
    
    - (void)willPlayClip { 
        [NSTimer scheduledTimerWithTimeInterval:10.0 
                target:self 
                selector:@selector(willPlayMusicInTenSeconds:) 
                userInfo:nil 
                repeats:NO]; 
    } 
    
    - (void)willPlayMusicInTenSeconds:(NSTimer *)timer { 
        NSLog(@"Get ready to Play noise sound"); 
        [_audioPlayer play]; 
        NSLog(@"Play noise sound"); 
    
        [musicPlayer play]; 
        NSLog(@"Start playing again"); 
    } 
    

    そして、それを押しますときのためnoiseButton内部コード:

    if ([musicPlayer playbackState] == MPMusicPlaybackStatePlaying) { 
        [musicPlayer pause]; 
        NSLog(@"Paused!"); 
        [self willPlayClip]; 
    } else { 
        NSLog(@"Already paused"); 
    } 
    
  • 答えて

    1

    あなたは何AudioSessionカテゴリを設定していますか?あなたがいない場合は、このマニュアルを参照してください:

    Audio Session Categories

    私はあなたがAVAudioSessionCategoryAmbientにセッションを設定する場合は、目的の動作を取得する必要があることを信じている:

    でアプリのカテゴリサウンドの再生はプライマリではありません。つまり、サウンドがオフの状態でアプリを使用することができます。

    このカテゴリは、ミュージックアプリの再生中にユーザーが演奏するバーチャルピアノなどの「再生」スタイルのアプリにも適しています。このカテゴリを使用すると、他のアプリケーションのオーディオがオーディオとミックスされます。オーディオはスクリーンロックとサイレントスイッチ(iPhoneのRing/Silentスイッチと呼ばれます)によって消音されます。

    もう一度試してみてください。

    +0

    甘い今日私はこれをチェックします – SRMR

    関連する問題