我正在为我的游戏添加声音效果,直到我输入此代码才能正常运行:
if (hit == NO) {
NSString *path = [[NSBundle mainBundle] pathForResource:@"miss" ofType:@"m4a"];
AVAudioPlayer* theAudio = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
[theAudio play];
NSLog(@"audio played miss.m4a");
// if hit is no miss sound effect plays
}
else {
NSString *path = [[NSBundle mainBundle] pathForResource:@"hit" ofType:@"m4a"];
AVAudioPlayer* theAudio = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
[theAudio play];
NSLog(@"audio played hit.m4a");
//if hit is yes or else (not no) then it plays hit sound effect
}
它说问题是围绕[NSURL fileURLWithPath:path]部分,我已经检查了它并经历了很多问题和教程,但似乎无法找到解决方案。我的所有文件都在Xcode项目中,并且正确命名并对应于我的pathForResource:@“miss”和hit以及ofType等。
答案 0 :(得分:0)
使用断点检查路径,如果它是零,则可能是资源不在捆绑中或者名称不同。
请注意,虽然模拟器不区分大小写,但设备区分大小写。