如何让应用程序监听设备的震动?我的意思不是应用程序中的唯一 Activity ,而是所有 Activity 。我使用了 TabActivity 并在此处执行了注册/注销 SensorManager 的所有逻辑,并将其实现为 SensorEventListener 以检测震动。然后选项卡中的 Activity 监听自定义 OnShakeListener,在我的 TabActivity 中声明。但这种逻辑导致崩溃。我选择这种实现方式是否正确,是否应该寻找错误?或者我应该使用服务来获得我想要的东西吗?还是有其他办法?
最佳答案
在一个 abstract
Activity
(例如:ShakeListenerActivity
)中实现摇动监听器(SensorEventListener
)并获取所有其他Activity
扩展你 ShakeListenerActivity
。
在 ShakeListenerActivity
中定义一个抽象方法(例如:shakeDetected(Params...)
)并在所有子 Activities
中覆盖它。
在 child Activity
的 shakeDetected(Params...)
中,您可以相应地实现不同的逻辑。
每当您通过 SensorEventListener
检测到任何摇晃时调用 shakeDetected()
关于android - 如何让我的所有 Activity 都听到设备的震动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8322400/