2011-12-05 2 views
0

audiotoolbox 프레임 워크를 사용하여 짧은 mp3 파일을 재생하는 두 개의 응용 프로그램이 있습니다. 배포 대상은 다음과 같습니다 4.0 그리고 자료 SDK는 다음과 같습니다 아이폰 OS 5.0 SDKAudioToolBox가 일부 장치에서 재생되지 않습니다

나는 아이폰 OS 5.0 및 iOS 5.0 아이폰 3GS와 아이폰 4를 가지고있다. 둘 다 소리를 내고있다. iOS 4.3이 장착 된 iPad를 가지고있는 내 친구는 아무 소리도들을 수 없습니다. iOS 4.2가 탑재 된 iPhone 4를 사용하는 다른 친구도 소리를 재생할 수 없습니다. 그것은 iOS와의 무언가와 비슷하지만 실제 재생되지 않는 이유는 무엇인지 전혀 알지 못합니다.

H. 파일 (에만 관련 코드) :

#import <AudioToolbox/AudioToolbox.h> 

SystemSoundID soundID1; 

M. 파일 (에만 관련 코드) : 여기

는 파일 재생을위한 내 코드의 예입니다

@synthesize soundID1 

- (IBAction)one:(id)sender 
{ NSString *path = [[NSBundle mainBundle] pathForResource:@"1" ofType:@"mp3"]; 
    AudioServicesCreateSystemSoundID((CFURLRef)[NSURL fileURLWithPath:path], &soundID1); 
    AudioServicesPlaySystemSound (soundID1); 
} 

- (void)dealloc { AudioServicesDisposeSystemSoundID (self.soundID1);} 
+0

편집 : 나는 미친 실수를 저지른 경우 초보자이므로 용서해주십시오. 또한 여기에 audiotoolbox를 사용했는지 확신 할 수는 없지만 여전히 해결책을 찾고 있습니다. –

답변

1

왜 AVAudioPlayer를 사용하여 사운드 파일을 재생하지 않습니까?

다음은 코드입니다.

#import <AVFoundation/AVAudioPlayer.h> 

- (void)viewDidLoad 
{ 

    NSString *path1 = [[NSBundle mainBundle] pathForResource:@"1" ofType:@"mp3"]; 
    1 = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path1] error:NULL]; 
    1.delegate = self; 
    [1 setVolume:1.0]; 
    [1 prepareToPlay]; 

} 

- (IBAction)one:(id)sender 
{ 

    if (1 && 1.playing) { 
     [1 stop]; 
     [1 setCurrentTime:0]; 
     [1 play]; 
    }else { 
     [1 play]; 
    } 

} 

iOS 5는 ARC를 사용하고 있기 때문에 출시 할 필요가 없습니다. 그러나 이전 iOS를 사용하는 경우 dealloc 메소드에서 릴리스를 작성하십시오.