:zap: [Android Library] Play with sensor events & detect gestures in a breeze.
The library is built for simplicity and ease of use. It eliminates most boilerplate code for dealing with setting up sensor based event and gesture detection on Android.
Gesture | Methods | Usage |
---|---|---|
Flip | onFaceUp onFaceDown |
Link |
Light | onDark onLight |
Link |
Orientation | onTopSideUp onBottomSideUp onLeftSideUp onRightSideUp |
Link |
PinchScale | onScale onScaleStart onScaleEnd |
Link |
Proximity | onNear onFar |
Link |
Shake | onShakeDetected onShakeStopped |
Link |
Wave | onWave | Link |
Chop | onChop | Link |
WristTwist | onWristTwist | Link |
Movement | onMovement onStationary |
Link |
SoundLevel | onSoundDetected | Link |
RotationAngle | onRotation | Link |
TiltDirection | onTiltInAxisX onTiltInAxisY onTiltInAxisZ |
Link |
Scoop | onScooped | Link |
PickupDevice | onDevicePickedUp onDevicePutDown |
Link |
Steps | stepInformation | Link |
TouchType | onDoubleTap onScroll(direction) onSingleTap onSwipeLeft onSwipeRight onLongPress onTwoFingerSingleTap onThreeFingerSingleTap |
Link |
Starting with 1.0.1
, Changes exist in the releases tab.
Sensey is available in the Jcenter, so getting it as simple as adding it as a dependency
implementation 'com.github.nisrulz:sensey:{latest version}'
where {latest version}
corresponds to published version in
onCreate()
in the activity/service, callSensey.getInstance().init(context);
onDestroy()
in the activity/service, call // *** IMPORTANT ***
// Stop Sensey and release the context held by it
Sensey.getInstance().stop();
Next to enable shake detection
ShakeDetector.ShakeListener shakeListener=new ShakeDetector.ShakeListener() {
@Override public void onShakeDetected() {
// Shake detected, do something
}
@Override public void onShakeStopped() {
// Shake stopped, do something
}
};
shakeListener
to startShakeDetection()
functionSensey.getInstance().startShakeDetection(shakeListener);
If you want to modify the threshold
and time
before declaring that shake gesture is stopped, use
Sensey.getInstance().startShakeDetection(threshold,timeBeforeDeclaringShakeStopped,shakeListener);
shakeListener
to stopShakeDetection()
functionSensey.getInstance().stopShakeDetection(shakeListener);
I welcome and encourage all pull requests. It usually will take me within 24-48 hours to respond to any issue or request. Here are some basic rules to follow to ensure timely addition of your request:
develop
branch. Any other branch (unless specified by the maintainers) will get rejected.Sensey is being used in production apps as well as research & development for thesis at universities.
Click here for the full list of references
Licensed under the Apache License, Version 2.0, click here for the full license.
This project was created by Nishant Srivastava but hopefully developed and maintained by many others. See the the list of contributors here.
Star this repository and tell all your friends about it.
Watch for new releases to get an update if something happens.
Open an Issue if you catch any error in copy text or within the project itself.
Open a Pull Request to add more reference links of where Sensey is being used or fixes against existing issues.
If you can spare a few 💵:
Tell me you like this project or how it helped you out!
Thanks for your interest in this software :heart: