作者: Leo Sei, Android 产品经理
我们在 11 月初举办了 Android 开发者峰会 https://mp.weixin.qq.com/s/ELt8ieL90bAfA69drPKHqw , 并在会上宣布 Android 将对折叠屏设备 (Foldable) 提供原生支持, 帮助开发者为三星等硬件合作伙伴即将推出的新设备做好准备.
建议您仔细阅读以下信息, 确保您的应用能够在这种新式屏幕上提供出色的用户体验 (亦或收看 Android 开发者峰会上有关折叠屏设备的专题分享 https://youtu.be/UwEyK5WATFA ).
1. 屏幕连续性
在可折叠设备上, 您的应用需要从一个屏幕自动切换到另一个屏幕上 (例如, 在用户折叠或展开折叠屏设备时). 在过渡期间, 系统就会向应用发送新布局的配置更改 (部分情况下, 屏幕密度也可能会改变). 为避免用户体验因应用切换屏幕而受到影响, 请您确保应用能够妥善处理运行时配置变更.
测试方法: 多款设备的模拟器马上就会与各位开发者见面 (比如, 三星将在第四季度发布一款能够模拟设备折叠 / 展开状态的 APK. 您可在三星 Galaxy S4 平板和 Android Studio 的 AOSP 模拟器上体验该 APK).
2. Multi-resume
目前, Android 系统允许多个应用同时共享屏幕, 但是其中只有具有焦点的应用才处于已恢复 (resumed) 状态, 其余应用均处于 onPause 状态.
虽然我们在《多窗口支持》一文中已经提供了同屏多应用的实现方法, 但是我们发现很多应用并没有按照这些方法来处理 onPause 状态 (视频暂停或停止, 即时消息未被显示等).
为了让开发者能够以最小的工作量实现最佳的多窗口体验, 从 Android 9 开始, 我们允许设备厂商在多窗口模式下保持所有可见应用处于 resumed 状态.
如果您想在 Android 9 中启用此行为, 请在应用清单中加入以下元数据:
请注意: 我们将在下个版本的 Android 系统中, 优化该行为的兼容性.
测试方法: 目前还没有任何设备支持该应用行为, 不过厂商正在努力升级现有设备, 让开发者能够尽早进行测试. 请您耐心等待, 并继续关注设备厂商公布的最相关消息.
3. 多显示屏支持
从 Android 8.0 开始, 平台为多显示屏提供了增强支持. 如果 Activity 支持多窗口模式, 并且在具有多个显示屏的设备上运行, 用户便可以将 Activity 从一个显示屏移动到另一个显示屏上. 当应用启动 Activity 时, 此应用可指定 Activity 应在哪个显示屏上运行.
如需了解详情, 请阅读完整版文档.
测试方法: 请点击 "开发者选项 > 模拟辅助显示设备", 进行测试. 不过请注意, 模拟屏无法处理输入.
点击这里下载 "Android 9 Pie 开发者手册" 和 "Android 9 Pie 常见问题及兼容性注意事项"
来源: https://juejin.im/post/5c09d57a5188256d9832df9a