1

iPad/iPhone アプリで作業しており、デリゲートの didFinishLaunchingWithOptions メソッドで呼び出すこのコード スニペットを使用してバックグラウンド ミュージックを再生しています。

-(void) playMusic {
    NSLog(@"play music!");

    NSString *sound_file; 
    if ((sound_file = [[NSBundle mainBundle] pathForResource:@"musicfile" ofType:@"mp3"])){

        NSURL *url = [[NSURL alloc] initFileURLWithPath:sound_file];
        self.audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:NULL];
        self.audioPlayer.delegate = self;

        [self.audioPlayer setNumberOfLoops:-1]; // Infinite loop
        [self.audioPlayer prepareToPlay];
        [self.audioPlayer setVolume:0.2];
        [self.audioPlayer play];

    } else {
        NSLog(@"WARN : music file not found!");
    }
    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];

}

しかし、この方法だけでも平均で 0.43 秒かかっていることがわかりました。私はそれを正しい方法でやっていますか?または、音楽の再生を開始するより速い方法はありますか? 助けてください。

私の環境:iOS5、XCode 4.3、iPad 2.0は、今これをテストしたものです

4

0 に答える 0