所以我正在制作这个应用程序,如果你按下一个按钮,就会播放声音,但是当我按下按钮时应用程序崩溃了。这是我的代码
在 .h 文件中
#import <UIKit/UIKit.h>
#import <AudioToolbox/AudioToolbox.h>
@interface ViewController : UIViewController {
}
-(IBAction)buttonPressedWithSound:(id)sender;
@end
那里没有错,但是在 .m 文件中
-(IBAction)buttonPressedWithSound:(id)sender {
int randomSoundNumber = arc4random() % 4; //random number from 0 to 3
NSLog(@"random NR = %i", randomSoundNumber);
NSString *effectTitle;
switch (randomSoundNumber) {
case 0:
effectTitle = @"Come at me BRO!";
break;
case 1:
effectTitle = @"sound2";
break;
case 2:
effectTitle = @"sound3";
break;
case 3:
effectTitle = @"sound4";
break;
default:
break;
}
SystemSoundID soundID;
NSString *soundPath = [[NSBundle mainBundle] pathForResource:effectTitle ofType:@"caf"];
NSURL *soundUrl = [NSURL fileURLWithPath:soundPath];
AudioServicesCreateSystemSoundID ((CFURLRef)CFBridgingRetain(soundUrl), &soundID);
AudioServicesPlaySystemSound(soundID);
}
@end
这条线在这里
NSURL *soundUrl = [NSURL fileURLWithPath:soundPath];
好吧,它说它有问题,这个
2012-08-10 10:12:52.419 Sound +[1177:907] random NR = 1(lldb)
和
NSURL *soundUrl = [NSURL fileURLWithPath:soundPath];
有一个绿色突出显示,并在其旁边显示“线程 1:断点 1.1”。
我该如何修复它,它可以在不崩溃的情况下播放声音