2013-11-20 24 views
3

有沒有人有過使用iOS Sprite Kit通過SKAction playSoundFileNamed通過iOS設備的外部揚聲器播放音頻的問題?我有下面的代碼,通過耳機播放M4A文件沒有問題;但是,當我拔下耳機按代碼執行時,沒有音頻播放,只是沒有聲音。我有另一個不使用這種方法的應用程序,它沒有問題。SKAction playSoundFileNamed通過iPhone音箱沒有音頻

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { 
    /* Called when a touch begins */ 

    for (UITouch *touch in touches) { 
     CGPoint location = [touch locationInNode:self]; 
     SKAction *sound = [SKAction playSoundFileNamed:@"blast.m4a" waitForCompletion:NO]; 
     [self runAction:sound]; 
} 

回答

0

只是爲了更新我已經安裝了IOS 7.0.4今天並重新測試,現在我對外部揚聲器的音頻,所以我會假設它是在IOS 7.0.3中的錯誤,因爲這是唯一的我對設備所做的更改。

7

我有一個類似的問題,但能夠通過將AudioSession類別設置爲Playback來修復它。這使得音頻通過手機的揚聲器被路由耳機時,未插好。

// at the top of AppDelegate.m 
#import <AVFoundation/AVFoundation.h> 

// in application:didFinishLaunchingWithOptions: 
NSError *error; 
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&error]; 

您可以找到有關這在蘋果的Audio Session Programming Guide更多信息。