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);

}
4

1 回答 1

0

我想就像你发现的那样。AudioServices 只能播放本地包中的声音,并且没有任何网络功能。

您需要先从网络 URL 下载声音,然后AudioServicesCreateSystemSoundID使用本地文件路径调用。

于 2012-10-03T15:51:39.533 回答