android11/Q分屏实现。
1、先确认支持分屏。
调用boolean supportsSplitScreenMultiWindow =
ActivityTaskManager.supportsSplitScreenMultiWindow(mContext);
确认是否支持分屏。
若返回false,修改frameworks\base\core\res\res\values\config.xml
config_supportsSplitScreenMultiWindow为true
2、分屏调用
mActivityTaskMgr.getService().setTaskWindowingModeSplitScreenPrimary(mLeftTask.id, false); mActivityTaskMgr.getService().resizeTask(mLeftTask.id,mSplitScreenRect,0);
可参考frameworks\base\packages\SystemUI\src\com\android\systemui\recents\OverviewProxyRecentsImpl.java
3、退出分屏
mActivityTaskMgr.getService().setTaskWindowingMode(mLeftTask.id, WINDOWING_MODE_FULLSCREEN, false);
4、中间分割线
frameworks\base\packages\SystemUI\src\com\android\systemui\stackdivider
Divider.java中添加。
遇到问题:
1、调用分屏接口setTaskWindowingModeSplitScreenPrimary后,并为退出分屏再次调用分屏接口,应用出现黑屏,希望有遇到此问题的可以讲解一下。
2、另请教,进入分屏后可切换右边窗口应用,是否有替换左边窗口应用的方式?