AndroidQ版本在开发的过程中碰到了一个问题,长按Recent键进入分屏,发现分割线没有弹起来,底部导航栏变了,但是分割线并没有显示,必须按一下HOME键或者BACK键之后,分屏分割线才能正常的弹起来。问题很奇怪,排查代码,分屏的流程一直从SystemUI跟到Framework层的ActivityStack,发现分屏的功能是在setwindowmode里面实现的,可是里面的调用实在太多,相关的值也太多,完全没有头绪,后寻求相关帮助后得知:
Q版本虽然还保留着长按Recent的函数逻辑,但是已经不支持长按Recent键进入分屏的逻辑了,入口在最近任务界面的图标上
另进行CTS测试,发现和分屏相关的测试项也跑不过,查看发现测试项有长按Recent相关的进入分屏的操作
综上,建议SystemUI NavigationBarFragment里面关闭长按Recent的入口