在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);
}
最佳答案
我认为这就是您所发现的。 AudioServices只能播放本地包中的声音,并且不具有任何联网功能。
您将需要先从网络URL下载声音,然后使用本地文件路径调用AudioServicesCreateSystemSoundID
。
关于iphone - 无法播放网络音频文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12710802/