让iPhone振动

让iPhone振动

如何将iPhone设置为振动一次?

例如,当玩家失去生命或游戏结束时,iPhone应该振动。


天涯尽头无女友
浏览 707回答 3
3回答

慕容森

从“&nbsp;iPhone教程:检查iOS设备功能的更好方法&nbsp;”:有两个看似相似的函数接受一个参数kSystemSoundID_Vibrate:1)&nbsp;AudioServicesPlayAlertSound(kSystemSoundID_Vibrate);2)&nbsp;AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);这两个功能都会震动iPhone。但是,当您在不支持振动的设备上使用第一个功能时,它会发出哔声。另一方面,第二个功能在不支持的设备上不执行任何操作。因此,如果您要持续振动设备,作为警报,常识说,请使用功能2。首先,AudioToolbox.framework在Build Phases&nbsp;中将AudioToolbox框架添加到目标。然后,导入此头文件:#import&nbsp;<AudioToolbox/AudioServices.h>

郎朗坤

Swift 2.0+AudioToolbox现在将其显示kSystemSoundID_Vibrate为SystemSoundID类型,因此代码为:import&nbsp;AudioToolbox.AudioServicesAudioServicesPlaySystemSound(kSystemSoundID_Vibrate)AudioServicesPlayAlertSound(kSystemSoundID_Vibrate)而不是必须通过额外的演员步骤(@Dov的道具)原始答案(Swift 1.x)而且,这是你如何在Swift上做的(如果你遇到了和我一样的麻烦)链接AudioToolbox.framework(转到您的项目,选择目标,构建阶段,链接二进制文件库,在那里添加库)完成后:import&nbsp;AudioToolbox.AudioServices//&nbsp;Use&nbsp;either&nbsp;of&nbsp;theseAudioServicesPlaySystemSound(SystemSoundID(kSystemSoundID_Vibrate))AudioServicesPlayAlertSound(SystemSoundID(kSystemSoundID_Vibrate))俗气的是,这SystemSoundID基本上是一个typealias(花哨的快速typedef)a&nbsp;UInt32,而且kSystemSoundID_Vibrate是一个常规的Int。编译器给你一个错误,试图从中转换Int为UInt32,但错误读作“无法转换为SystemSoundID”,这是令人困惑的。为什么苹果不能让它成为Swift枚举超出我的范围。@ aponomarenko's详细介绍,我的答案仅适用于那里的Swifters。
打开App,查看更多内容
随时随地看视频慕课网APP