Android屏幕旋转检测

时间:2016-05-26 10:41:32

标签: android listener screen-rotation

我有一个应用程序强制屏幕旋转到横向(ADB上的外部应用程序控制设备)

我的设备上运行的另一个应用程序必须检测当前方向(纵向/横向,反向或不反转)并在设备屏幕方向改变时执行某些操作。 我编写了一个适用的OrientationEventListener:

m_orientationEventListener = new OrientationEventListener(this) {
    @Override
    public void onOrientationChanged(int orientation) {
        doSomething()
    }
};
m_orientationEventListener.enable();

我的问题: 当屏幕关闭然后再打开时,库存ROM将屏幕旋转为纵向,直到屏幕解锁。 **当屏幕旋转到人像时,我也没有收到任何事件,也没有在解锁后旋转回横向**

有什么方法可以听吗?

  

注意:我屏幕上没有活动:我在后台运行   想要从后台检测它。

感谢您的帮助

1 个答案:

答案 0 :(得分:2)

谢谢+ satnam singh

以下是我使用的示例代码:

#container_page

我添加了一个屏幕状态(开/关)BroadcastReceiver,以在屏幕关闭时关闭我的监听器并避免不必要的功耗