WatchShaker alternatives and similar libraries
Based on the "Other Hardware" category.
Alternatively, view WatchShaker alternatives based on common mentions on social networks and blogs.
-
Luminous
Luminous provides you a lot of information about the system and a lot of handy methods to quickly get useful data on the iOS platform.
InfluxDB - Purpose built for real-time analytics at any scale.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of WatchShaker or a related project?
README
WatchShaker
Simple motion detector for ⌚️ (watchOS) shake gesture.
WatchShaker is a watchOS helper to get your ⌚️ shake movements
Requirements
- watchOS 6.0+
- Xcode 11.0+
Installation
Swift Package Manager
Once you have your Swift package set up, adding WatchShaker as a dependency is as easy as adding it to the dependencies
value of your Package.swift
.
dependencies: [
.package(url: "https://github.com/ezefranca/WatchShaker.git", .upToNextMajor(from: "1.0.2"))
]
Manually
- Download and drop
WatchShaker
folder in your project to your watch target. - Congratulations!
Usage example
Closure Style
import WatchKit
import Foundation
import WatchShaker
class InterfaceController: WKInterfaceController {
var shaker:WatchShaker = WatchShaker(shakeSensibility: .shakeSensibilityNormal, delay: 0.2)
override func awake(withContext context: Any?) {
super.awake(withContext: context)
}
override func willActivate() {
super.willActivate()
shaker.start()
shaker.startWatchShakerUpdates = { shakeSensibility, error in
guard error == nil else
{
print(error?.localizedDescription)
return
}
print("I'm shook! ⌚️⌚️⌚️")
}
}
override func didDeactivate() {
super.didDeactivate()
shaker.stop()
}
}
Delegate Style
import WatchKit
import Foundation
class InterfaceController: WKInterfaceController {
override func awake(withContext context: Any?) {
super.awake(withContext: context)
// Configure interface objects here.
}
var shaker:WatchShaker = WatchShaker(shakeSensibility: .shakeSensibilityNormal, delay: 0.2)
override func willActivate() {
super.willActivate()
shaker.delegate = self
shaker.start()
}
override func didDeactivate() {
super.didDeactivate()
shaker.stop()
}
}
extension InterfaceController: WatchShakerDelegate
{
func watchShaker(_ watchShaker: WatchShaker, didShakeWith sensibility: ShakeSensibility) {
print("I'm shook! ⌚️⌚️⌚️")
}
func watchShaker(_ watchShaker: WatchShaker, didFailWith error: Error) {
print(error.localizedDescription)
}
}
Optional Directions
If you interested you can get the direction
of the shake on the didShakeWith
method.
func watchShaker(_ watchShaker: WatchShaker, didShakeWith sensibility: ShakeSensibility,
direction: ShakeDirection) {
print("I'm shook! ⌚️⌚️⌚️ \(direction)")
}
ShakeDirection
is a simple enum who gives you up
, down
, left
or right
direction. The image bellow is the way used to determine what is each direction.
This gentleman bellow for example, is clearly doing a shake with ShakeDirection.shakeDirectionRight
😂
Contribute
We would love for you to contribute to WatchShaker, check the LICENSE
file for more info.
Meta
Ezequiel França – @ezefranca and all awesome Contributors
Distributed under the MIT license. See LICENSE
for more information.
*Note that all licence references and agreements mentioned in the WatchShaker README section above
are relevant to that project's source code only.