2

実行の開始時に音楽を再生して停止すると、アプリケーションは正常に動作しましたが、後で音楽を停止し、アプリケーションをかなりの時間アイドル状態にして再生ボタンをクリックすると、アプリケーションは警告を出力せず、音楽も出力しませんでした私の音楽が現在再生されているログ出力でも再生されます。何も問題がないので、これにつながるエラーが何であるかわかりません。これは IOS シミュレーターで一般的な動作ですか?

念のため、これは私のオーディオコードです。

-(void)musicIsPlaying:(id)sender
{
    AVAudioPlayer *theAudio = [sender objectForKey:@"audio"];
    UIButton *btn = [sender objectForKey:@"button"];
    if (btn.selected == TRUE) 
    {
        [btn setTitle:@"Stop" forState:UIControlStateNormal];
        [btn setSelected:FALSE];    
        if(theAudio.isPlaying == NO)
        {
            [theAudio prepareToPlay];
            [theAudio play];
            NSLog(@"music playing");
        }                                    
    }
    else
    {
        [btn setTitle:@"Play" forState:UIControlStateNormal];
        [btn setSelected:TRUE];
        if(theAudio.isPlaying==YES)
        {
            [theAudio stop];
            NSLog(@"music stop playing");
        }        
    }    
}
4

2 に答える 2

0

アプリケーションがアクティブになったら、メソッドを呼び出してプレイを再開する必要があります。したがって、Appdelegate でプレイを再開するコードを記述してください。

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
}
于 2013-09-05T06:53:05.247 に答える