如何在iOS中进行长时间的振动

Posted

技术标签:

【中文标题】如何在iOS中进行长时间的振动【英文标题】:How to make a long vibration in iOS 【发布时间】:2019-06-06 22:30:08 【问题描述】:

我想制作一个按钮,你按下它,你的手机就会振动。松开时,振动应该停止。理想情况下,它将具有触摸灵敏度,因此您按得越用力,嗡嗡声就越强。

AudioservicesPlaySystemSound(kSystemSoundID_Vibrate)

目前这只播放 1 次嗡嗡声,循环仍然有轻微的断开,但循环仍然是不需要的解决方法。

【问题讨论】:

【参考方案1】:

显然,您可以通过以下方式使手机振动:

import UIKit
import AudioToolbox

class ViewController: UIViewController 

    override func viewDidLoad() 
        super.viewDidLoad()
        AudioServicesPlayAlertSound(SystemSoundID(kSystemSoundID_Vibrate))            
    


(此示例来自帖子here)

如果您希望振动是无限的和连续的,您可以使用计时器按顺序播放它。但显然,this is a common cause of app rejection from the App store,所以我不会推荐它。

我不确定是否有用于提高触觉反馈/系统振动速度的 API。

【讨论】:

我尝试了一个循环,但在重复振动之间需要暂停。 kSystemSoundID_Vibrate 确实喜欢半秒的振动。我已经看到它可能会被拒绝,但是我仍然很好奇。

以上是关于如何在iOS中进行长时间的振动的主要内容,如果未能解决你的问题,请参考以下文章

如何以编程方式检查设备是不是在 iOS 中设置振动模式?

是否可以仅在 iOS 中的推送通知上振动?

如何在Swift 4中的watchOS 4上激活振动

在我的 iOS 应用程序的本地通知中实现振动和声音设置

在推送通知中振动

当应用程序在后台并且手机处于振动状态时,一些闹钟应用程序(例如 Alarmy)如何能够在 iPhone 上播放声音