Crown to provide haptic feedback

Hello,


i am developing a interface for the Apple Watch using SpriteKit, where i would like to provide some feedback in the crown.

If you look at the picture, the dot in the middle will move when i turn the crown, and when it enters the annulus (math term for a ring) i would like to provide haptic feedback in the crown, as when you scroll a normal list.


I have been looking at the WKCrownSequeencer (https://developer.apple.com/documentation/watchkit/wkcrownsequencer) but dont find it fufilling to do the job.


Picture here: https://i.imgur.com/EZyJkMw.jpg

Replies

Hey PBK thanks for the links.


The two first are purely HIG, the third is for macOS and the last only briefly names the haptics in the crown.

But one of the two first, maybe states that one have no custom control of the haptic feedback in the crown outside of tableviews, is that the case you try to state?
I would see it as a huge loss, since i need the feedback in the crown for research purposes.

I am not familiar with the system.


It says:

"By default the system provides linear haptic detents—or taps—as the user rotates the crown. Some system controls, like table views, provide detents as new items scroll onto the screen."


1) I read "Some system controls, like table views" as suggesting that other system controls will also cause haptics.

2) You have control over the height of c3)ells in a table view. That means you have indirect control over those haptics through a table view.

1) yes that is how i read it too, but i struggle to find out how.


Hoping somebody will be able to tell me how that it is done

When I read


https://developer.apple.com/documentation/watchkit/wkinterfacedevice/1628128-playhaptic?language=objc


I do not see a limit to tableViews.


Can you show your code where you try to playHaptic ?

Hey Claude, thanks for writing.


as i understand, with playHaptic, you can only fire a WKHapticType which all are haptics in the watch plus it plays sound. I am only interrested in playing haptic in the crown, and the haptic i would like to play in the crown, is like when you scroll the multitasking-view.

Reading doc shows it should be possible:

https://developer.apple.com/design/human-interface-guidelines/watchos/user-interaction/digital-crown/


By the way, I discover here what detents are !


Haptic Feedback

Apple Watch Series 4 provides haptic feedback for the Digital Crown, creating a more tactile experience as the user scrolls through content. By default the system provides linear haptic detents—or taps—as the user rotates the crown. Some system controls, like table views, provide detents as new items scroll onto the screen.

Use the default haptic feedback. If haptic feedback doesn't feel right within the context of your app—for example, if the linear detents don’t match your app’s animation—disable the detents. You can also adjust the haptic feedback behavior for tables, letting the table use linear detents instead of the row-based detents. For example, if your table has rows with significantly different heights, linear detents may produce a better feel.


I had not yet time to explore this tutorial (but I fear it is paying)


h ttps://www.raywenderlich.com/347-watchos-by-tutorials-updated-for-swift-4-and-watchos-4

>But one of the two first, maybe states that one have no custom control of the haptic feedback in the crown outside of tableviews...


That seems to be the interpretation, yes... in keeping with Apple having tight control over such fundamental device elements, and their attitude surrounding user expectations and habits, which if unexpectedly differ from defaults can result in confusion, etc.


Also note the ASRG's Software Requirements 2.5.3


>I would see it as a huge loss, since i need the feedback in the crown for research purposes.


As always, feel free to submit an enhancement request via the bug report/(suggestion) link below, adding your report # to your thread for reference, thanks and good luck.