Watch Kit:是否可以通过编程方式让手表振动?
Watch Kit: is it possible to vibrate watch programmatically?
Watch Extension 为 运行 时是否可以振动手表?我们可以这样在iOS上做(强制iPhone振动):
AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);
希望WatchKit上有类似的东西。
更新: 我已将问题添加到 Apple 雷达并收到答案:
Engineering has determined that your bug report (20019274) is a duplicate of another issue (19025053) and will be closed.
19025053 还在营业中。
更新 2: AudioServicesPlayAlertSound()
无法在具有任何声音 ID 的手表模拟器上运行。似乎不支持该功能。
这是一个很好的问题,但遗憾的是答案是否定的。 WatchKit 没有任何可用于控制触觉反馈的 API。如果您真的希望看到支持此功能,我建议您提交 radar 作为功能请求。
使用 WatchKit,您必须记住您的代码 运行 位于 iPhone 而不是手表上。因此,来自 WatchKit 扩展的 AudioServicesPlaySystemSound 调用将在 iPhone 上 运行,而不是在手表上。它会使 iPhone 振动。
如果您的目标是 watchOS 2.0
,您现在可以让手表振动
要做到这一点,您需要做的就是使用任何 WKHapticType
在 WKInterfaceDevice
实例上调用 playHaptic
。在下面的示例中,它将播放通知触觉。
Swift 3
WKInterfaceDevice.current().play(.notification)
Objective-C
[[WKInterfaceDevice currentDevice] playHaptic:WKHapticTypeNotification];
这是watchOS 2
后objective-c中的答案
[[WKInterfaceDevice currentDevice] playHaptic:WKHapticTypeNotification];
Watch Extension 为 运行 时是否可以振动手表?我们可以这样在iOS上做(强制iPhone振动):
AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);
希望WatchKit上有类似的东西。
更新: 我已将问题添加到 Apple 雷达并收到答案:
Engineering has determined that your bug report (20019274) is a duplicate of another issue (19025053) and will be closed.
19025053 还在营业中。
更新 2: AudioServicesPlayAlertSound()
无法在具有任何声音 ID 的手表模拟器上运行。似乎不支持该功能。
这是一个很好的问题,但遗憾的是答案是否定的。 WatchKit 没有任何可用于控制触觉反馈的 API。如果您真的希望看到支持此功能,我建议您提交 radar 作为功能请求。
使用 WatchKit,您必须记住您的代码 运行 位于 iPhone 而不是手表上。因此,来自 WatchKit 扩展的 AudioServicesPlaySystemSound 调用将在 iPhone 上 运行,而不是在手表上。它会使 iPhone 振动。
如果您的目标是 watchOS 2.0
,您现在可以让手表振动要做到这一点,您需要做的就是使用任何 WKHapticType
在 WKInterfaceDevice
实例上调用 playHaptic
。在下面的示例中,它将播放通知触觉。
Swift 3
WKInterfaceDevice.current().play(.notification)
Objective-C
[[WKInterfaceDevice currentDevice] playHaptic:WKHapticTypeNotification];
这是watchOS 2
后objective-c中的答案[[WKInterfaceDevice currentDevice] playHaptic:WKHapticTypeNotification];