我一直在尝试使用此代码制作iPhone Vibrate:
AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);
但是没有用,可能是因为我在调用它的同时播放声音吗?
答案 0 :(得分:15)
如果这有助于任何人,我发现当AVAudioRecorder
正在录制时,vibrate命令将无效。绕过这个很简单。您只需要先停止录音机然后再继续录音:
[recorder stop];
AudioServicesPlaySystemSound (kSystemSoundID_Vibrate);
[recorder record];
如果您想使用UIBackgroundModes
在背景中录制声音和振动,这甚至可以正常工作。
答案 1 :(得分:6)
这应该可以正常工作。设备上的振动是否已关闭?
答案 2 :(得分:3)
我在iPhone 4上成功使用该代码。documentation of System Sound并不清楚,但只有在“设置”中启用了振动时,该代码才有效。
当然请注意,振动有两种不同的设置:静音模式和普通模式。将振铃/静音开关切换到静音不足以启用振动。
我猜你已经尝试在设备设置中启用振动,但无论如何都值得强调这一点。
答案 3 :(得分:0)
在我测试过的所有iPhone上(原始,3GS和4),它应该振动。在第一代iPod touch上,它会通过内置扬声器发出哔哔声。在iPod touch第二代,它什么都不做。在iPad上,它也不会做任何事情。这些都是我测试过的所有设备。