我可以使用 3D Touch 为 iOS 上的手势添加反馈(缺口)吗?

Can I add feedback (notch) to a gesture on iOS using 3D Touch?

在 OS X 应用程序上使用 Force Touch 可以提供反馈或缺口(haptics/taptics?),如 Apple 的示例所述:

Map rotation: You'll feel a notch when you rotate the compass to north in Maps.

除了旧音频 API 让设备振动 (AudioServicesPlayAlertSound) 之外,3D Touch 是否可以实现同样的功能?

是的,在支持的设备上使用 iOS 10+ 中的 UIFeedbackGenerator,您可以执行如下操作:

var feedbackGenerator: UISelectionFeedbackGenerator

func prepare() {
    // Instantiate a new generator.
    feedbackGenerator = UISelectionFeedbackGenerator()

    // Prepare the generator when the gesture begins.
    feedbackGenerator?.prepare()
}

func notch() {
    // Trigger selection feedback.
    feedbackGenerator?.selectionChanged()

    // Release the current generator.
    feedbackGenerator = nil
}