/** Ċ Ġ* ĠBack pack Ġfor ĠAndroid Ġ- ĠSky scanner 's ĠDesign ĠSystem Ċ Ġ* Ċ Ġ* ĠCopyright Ġ 2 0 1 8 - 2 0 2 0 ĠSky scanner ĠLtd Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġnet . sky scanner . back pack . demo Ċ Ċ import Ġandroid . hardware . Sensor Ċ import Ġandroid . hardware . Sensor Event Ċ import Ġandroid . hardware . Sensor EventListener Ċ Ċ class ĠSh ake Listener ( val Ġon Sh aked : Ġ() Ġ-> ĠUnit ) Ġ: ĠSensor EventListener Ġ{ ĊĊĠ Ġprivate Ġvar Ġlast Update : ĠLong Ġ= Ġ 0 ĊĠ Ġprivate Ġvar Ġlast X : ĠFloat Ġ= Ġ 0 f ĊĠ Ġprivate Ġvar Ġlast Y : ĠFloat Ġ= Ġ 0 f ĊĠ Ġprivate Ġvar Ġlast Z : ĠFloat Ġ= Ġ 0 f ĊĊĠ Ġoverride Ġfun Ġon Accuracy Changed ( sensor : ĠSensor ?, Ġaccuracy : ĠInt ) Ġ{} ĊĊĠ Ġoverride Ġfun Ġon Sensor Changed ( event : ĠSensor Event ) Ġ{ ĊĠĠĠ Ġval Ġcur Time Ġ= ĠSystem . currentTimeMillis () ĊĠĠĠ Ġ// Ġonly Ġallow Ġone Ġupdate Ġevery Ġ 1 0 0 ms . ĊĠĠĠ Ġif Ġ( cur Time Ġ- Ġlast Update Ġ> Ġ 1 0 0 ) Ġ{ ĊĠĠĠĠĠ Ġval Ġdiff Time Ġ= Ġcur Time Ġ- Ġlast Update ĊĠĠĠĠĠ Ġlast Update Ġ= Ġcur Time ĊĊĠĠĠĠĠ Ġval Ġx Ġ= Ġevent . values [ 0 ] ĊĠĠĠĠĠ Ġval Ġy Ġ= Ġevent . values [ 1 ] ĊĠĠĠĠĠ Ġval Ġz Ġ= Ġevent . values [ 2 ] ĊĊĠĠĠĠĠ Ġval Ġspeed Ġ= ĠMath . abs ( x Ġ+ Ġy Ġ+ Ġz Ġ- Ġlast X Ġ- Ġlast Y Ġ- Ġlast Z ) Ġ/ Ġdiff Time Ġ* Ġ 1 0 0 0 0 ĊĊĠĠĠĠĠ Ġif Ġ( speed Ġ> Ġ 8 0 0 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġon Sh aked () ĊĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠ Ġlast X Ġ= Ġx ĊĠĠĠĠĠ Ġlast Y Ġ= Ġy ĊĠĠĠĠĠ Ġlast Z Ġ= Ġz ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ