2012-10-03 186 views
1

在iOS5中,以下代碼與本地聲音文件一起使用;然而,當我嘗試網絡上的相同文件(以及實際存在的文件)時,它不會播放聲音。它說錯誤-43,但文件在那裏。我嘗試使用註釋掉的 行來訪問網絡文件。無法播放網絡音頻文件

-(void) playSound { 

    SystemSoundID soundID; 
    //NSURL *path = [NSURL URLWithString:@"http://www.somerealwebtise.com/test.wav"]; 

    NSURL *path = [[NSBundle mainBundle] URLForResource: @"test" withExtension: @"wav"]; 

    self.sysSoundTestPath = (__bridge CFURLRef)path; 

    AudioServicesCreateSystemSoundID(self.sysSoundTestPath, &soundID); 
    AudioServicesPlaySystemSound(soundID); 

} 

回答

0

我認爲這就像你發現的一樣。 AudioServices只能播放來自本地軟件包的聲音,並沒有任何網絡功能。

您需要首先從網絡URL下載聲音,然後用本地文件路徑撥打AudioServicesCreateSystemSoundID