如何让应用程序听设备的震动?我的意思不是应用程序中唯一的活动,而是所有活动。我使用了TabActivity并完成了注册/取消注册SensorManager的所有逻辑,并将其实现为SensorEventListener来检测抖动。然后,标签中的活动侦听了我的TabActivity中声明的自定义OnShakeListener。但这种逻辑会导致崩溃。我是否正确选择这种实施方式并应该寻找错误?或者我应该使用服务来获得我想要的东西吗?或者还有其他方法吗?
答案 0 :(得分:1)
在一个SensorEventListener
abstract
(例如:Activity
)中实施震撼监听器(ShakeListenerActivity
)并让所有其他Activity
扩展您ShakeListenerActivity
在shakeDetected(Params...)
中定义一个抽象方法(例如:ShakeListenerActivity
)并在所有子Activities
中覆盖它。
在孩子Activity
的{{1}}中,您可以相应地实施不同的逻辑。
shakeDetected(Params...)
检测到任何晃动时,请致电shakeDetected()