Я играю звук, который срабатывает в фоновом режиме, но он звучит менее секунды.Я пробовал файлы WAV и M4A.но я схожу с ума, находя ответ на проблему.его даже не закончил один цикл .. вы знаете, почему это произошло?Может кто-нибудь, пожалуйста, помогите мне?
это код игры:
NSString *audioFilePath = [[NSBundle mainBundle] pathForResource:[userProp valueForKey:@"romba"] ofType:@"m4a"];
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:audioFilePath] error:NULL];
audioPlayer.delegate=self;
audioPlayer.numberOfLoops = -1;
[audioPlayer play];
Я пытался вызвать функции делегата, чтобы проверить проблему, но ничегомоя консоль
-(void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag{
NSLog(@"finish playing");
}
-(void)audioPlayerDecodeErrorDidOccur:(AVAudioPlayer *)player error:(NSError *)error{
NSLog(@"stops - decoder error");
NSLog(@"error: %@",[error description]);
}
-(void)audioPlayerEndInterruption:(AVAudioPlayer *)player{
NSLog(@"stops - decoder error");
}
так я добавляю AVAudoioPlayer -
-(void)syncAlarmProperties{
NSUserDefaults *userProp = [NSUserDefaults standardUserDefaults];
NSString *audioFilePath = [[NSBundle mainBundle] pathForResource:[userProp valueForKey:@"alertProp"] ofType:@"wav"];
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:audioFilePath] error:NULL];
audioPlayer.delegate=self;
audioPlayer.numberOfLoops=-1;
}
это функция воспроизведения:
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
{
[audioPlayer play];
}