可以看到,分屏是Multi-WindowMode的其中一种,用于手机等移动设备。MIUI从MIUI9开始支持分屏,基于Android7.0优化,因此开发者不用针对MIUI做重复的适配工作。
如前所述,Android7.0的分屏允许某个应用始终可见,MIUI会在这个基础上做更多的交互优化,以符合用户的预期。在这个背景下,分屏对于开发者来说有以下好处:
随着Android7.0的设备越来越多,支持分屏带来的好处将会被不断放大。加之Android有标准的分屏接口,大大减少了开发者的适配工作量。
android:resizeableActivity=["true"|"false"]如果这个属性设为true,Activity就可以在分屏模式下显示;设为false,Activity则不会在分屏模式下显示,而是会占满整个屏幕。因此开发者可以根据具体场景,仅让部分Activity支持分屏。
配置resizeableActivity的属性,是适配分屏的最简单方式,但如果想要提供更好的使用体验,需要开发者做一定优化工作。下面是我们了解到的一些案例(测试机型:Nexus6Andriod7.1),开发者可以根据自己的业务需求,做不同程度的优化。
由于用户可以自由调整分屏的窗口比例,因此开发者只要减少了不可滑动的控件,分屏的可用性就会大大提高,是性价比非常高的优化方案。
分屏时,屏幕的高度和宽度会发生变化,因此在书写控件布局时,尽量使用相对位置,以避免窗口大小改变时,控件无法显示或显示不全。这也是一种性价比很高的优化方案,可以保证用户在分屏时能正常使用应用。
由于分屏过程中,允许用户调整窗口的大小,这就会导致Configuration的改变。Android的默认处理方式是relaunch整个Activity,从而出现页面闪一下的问题。如果想避免闪一下的问题,建议开发者自己处理Configuration的变化。
分屏后,屏幕空间变得非常小了,为了给内容让出更多空间,应尽量减少常驻控件。一种解决办法是在浏览内容时,隐藏底部tab等常驻控件,用户回滚时再出现,以展示更多的内容。
动态布局指根据当前的窗口大小,重新调整页面的布局。这是一项锦上添花的优化项,开发者可以酌情考虑是否添加此优化。
搭载Android7.0或以上的MIUI手机及平板设备均支持分屏。MIUI也将尝试将分屏移植至Android6.0。因此将有数千万的新老设备支持分屏。
MIUI的分屏方案完全兼容Android7.0,因此可以在任意运行Android7.x的设备上调试,无需为MIUI作特别处理。同时,以上提到的案例均能在任意Android7.x设备复现。调试过程中,建议开启以下设置项:「开发者选项>强制将活动设为可调整大小」,然后重启手机,之后系统就会强制应用进入分屏模式,以方便开发者观察应用在分屏时的表现。
分屏不仅不是伪需求,而且会是一个大众需求。我们认为分屏最主流的使用场景是:一边看视频,一边做其它事情。用手机看视频,已经成为用户的主流场景,各大视频应用的日活人数、使用次数、使用时长都可以佐证这个观点。但使用手机看视频有很多痛点,比如会被IM消息打断、切换至后台视频会暂停等。这些痛点都可以通过分屏较好地解决,这也是分屏能成为大众需求的潜力。
但不可否认的是,分屏也会带来很多可用性问题,尽管系统已经做了很多优化工作,仍然需要各大开发者做进一步的优化,提高分屏模式的可用性。因此非常希望各位开发者能够支持该功能,为广大用户提供更好的使用体验。再次感谢所有开发者的支持与付出!