在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 :(得分:0)
我认为就像你发现的一样。 AudioServices只能播放本地捆绑包中的声音,并且没有任何网络功能。
您需要先从网络网址下载声音,然后使用本地文件路径调用AudioServicesCreateSystemSoundID
。