我想在倒计时结束时发出双重振动,但我看到的所有选项都不起作用。例如,我尝试了以下内容:
AudioServicesPlayAlertSound(UInt32(kSystemSoundID_Vibrate))
但它没有按照描述的那样工作。我不记得它是否只振动一次或根本不振动,但它不振动两次
let feedbackGenerator = UIImpactFeedbackGenerator(style: .heavy)
feedbackGenerator.impactOccurred()
let feedbackGenerator = UINotificationFeedbackGenerator()
feedbackGenerator.notificationOccurred(.error)`enter code here`
let feedbackGenerator = UISelectionFeedbackGenerator()
feedbackGenerator.selectionChanged()
根本没有任何工作。
最后我尝试了这个:
var counter = 0
var timer : NSTimer?
func vibratePhone() {
counter++
switch counter {
case 1, 2:
AudioServicesPlaySystemSound(kSystemSoundID_Vibrate)
default:
timer?.invalidate()
}
}
@IBAction func vibrate(sender: UIButton) {
counter = 0
timer = NSTimer.scheduledTimerWithTimeInterval(0.6, target: self, selector: "vibratePhone", userInfo: nil, repeats: true)
}
}`
这确实有效,但在播放第一次震动之前它有一个大约1秒的延迟,这比没有好,但不是我想要的。
如果我能弄明白如何使用我在iPhone上创建的振动模式之一,然后将其保存到我的MBP并在我的Xcode应用程序中使用它,那么最理想的是我最接近这个正在让客户从我的手机上振动plist文件。之后我就不知道如何使用它(如果我可以使用的话)。
有没有人对如何实现这一点有任何想法? 谢谢!