AudioServicesPlaySystemSound(kSystemSoundID_Vibrate)

AudioServicesPlaySystemSound(kSystemSoundID_Vibrate)

我正在开发一个自定义闹钟应用程序,希望在闹钟响起后立即在我的应用程序中使用振动功能,并且我使用了 AudioToolbox 并使用了以下代码:

AudioServicesPlayAlertSound(SystemSoundID(kSystemSoundID_Vibrate))

它起作用了,但我想 运行 在我的应用程序中持续振动。

有什么方法可以实现吗??

你可以使用NSTimer调用你的函数,其中包含振动代码,当你想停止它时,你可以调用NSTimer的release方法。

示例代码:

    NSTimer *t = [NSTimer scheduledTimerWithTimeInterval: 2.0
                                                  target: self
                                                selector:@selector(onTick:)
                                                userInfo: nil repeats:NO];

    -(void)onTick:(id)sender{

        AudioServicesPlayAlertSound(SystemSoundID(kSystemSoundID_Vibrate))

    }

此代码将使设备持续振动并延迟 2 秒。 当你想停止振动时,你可以调用release方法。

Ex. [t release];

您将不得不重复您的振动请求。

NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval: 1.0 target: self selector:@selector(repeat:) userInfo: nil repeats:NO];

-(void)repeat:(id)sender{

  AudioServicesPlayAlertSound(SystemSoundID(kSystemSoundID_Vibrate))

}