如何检测设备何时进入Android N的多窗口模式

时间:2017-03-10 12:18:33

标签: android service overlay android-7.0-nougat multi-window

当用户切换到多窗口模式时,我希望从后台服务获得通知。有没有办法通过除了流程中涉及的活动之外的服务来获取此信息。

另外我注意到,当在前景窗口的区域上单击叠加时,它会自动切换到该区域下的活动。这可以预防吗?

2 个答案:

答案 0 :(得分:2)

您必须添加ViewTreeObserver。并检查设备是否进入多窗口模式 getActivity()。isInMultiWindowMode()

答案 1 :(得分:0)

在API 24中添加

isInMultiWindowMode()以检查设备是否在多窗口中,它返回一个布尔值。当设备进入多窗口时,它会触发onConfigurationChanged()方法。在那里,您可以处理横向和纵向模式。

@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
     if(newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE)
      {
        //do something
      }else{

      }
}