我更新到OS X Lion 10.7.3和Xcode 4.3.2。我无法使用以下代码在iPhone模拟器或iPhone设备上播放声音。我可以在Snow Leopard和Xcode 4.2上使用相同的代码播放声音。我不知道为什么我无法听到4.3.2中的声音。任何人都可以帮忙吗?
.h文件
#import <UIKit/UIKit.h>
#import <AudioToolbox/AudioToolbox.h>
@interface soundViewController : UIViewController {
}
-(IBAction)playSounds:(id)sender;
@end
.m文件
-(IBAction)playSounds:(id)sender {
CFBundleRef mainBundle = CFBundleGetMainBundle();
CFURLRef soundFileURLRef;
soundFileURLRef = CFBundleCopyResourceURL(mainBundle, (CFStringRef) @"E", CFSTR("caf"), NULL);
UInt32 soundID;
AudioServicesCreateSystemSoundID(soundFileURLRef, &soundID);
AudioServicesPlaySystemSound(soundID);
}
答案 0 :(得分:0)
XCode 4.3有时会无缘无故地从复制资源列表中排除文件。验证文件是否包含在目标中。即使您添加它,有时它也不会成为目标的资源。单击该文件并选择属性检查器的最左侧选项卡,并确保在“目标成员身份”部分中选中目标旁边的复选框。