大屏幕使用入门

大屏设备可为您提供更多应用开发机会。平板电脑、可折叠设备和 ChromeOS 设备配备的大屏幕可以展示内容,提升多任务处理效率,并实现在小屏幕上无法实现的界面。

如要开始进行大屏设备开发,请参阅大屏设备应用质量指南。该指南是一套全面的要求,旨在帮助您让应用在大屏设备上提供绝佳的体验。

质量指南分为三个层级:可以在大屏设备上运行、针对大屏设备优化和成为与众不同的大屏设备应用。您可从“可以在大屏设备上运行”开始,渐进地完成各个层级,从而向应用中添加大屏设备功能。如果您已有应用,请使用质量指南测试来确定您的应用目前支持的层级,然后逐级实现相关功能,直到您的应用成为与众不同的大屏设备应用。

支持大屏设备

当用户能够在大屏设备上使用您的应用的所有功能时,应用就已“可以在大屏设备上运行”。在这个层级,应用必须支持竖屏和横屏以及多窗口模式,但应用布局和界面可能不太理想。

配置和连续性

诸如设备旋转、多窗口模式下的窗口大小变化以及折叠或展开可折叠设备等配置变更,可能会导致用户丢失上下文,更糟的情况下甚至会丢失数据。

请确保您的应用能够在配置变更期间保留并恢复状态,并继续执行持续执行的进程(例如媒体播放)。

如需了解详情,请参阅以下开发者指南:

多窗口模式

在大屏设备上,多窗口模式更易于使用且更高效。让您的应用能够在多窗口模式(如分屏模式或自由窗口模式)下与其他应用一起运行。

当您的应用处于多窗口模式时,请使用 WindowMetrics API 准确地确定应用窗口的大小。

请参阅多窗口支持

多项恢复

在 Android 10(API 级别 29)及更高版本中,当设备处于多窗口模式时,未获得焦点的 activity 会保持 RESUMED 状态。在低于 Android 10 的版本中,未获得焦点的 activity 会保持 STARTED 状态,但不会保持 RESUMED 状态。

请确保您的应用支持多项恢复模式,即当应用不是获得焦点的应用时,仍能继续执行持续执行的进程(例如媒体播放或文件下载)。此外,您的应用还必须处理失去设备摄像头和麦克风等独占性资源的问题。

请参阅多窗口支持中的多窗口生命周期

相机预览

如果您的应用提供相机预览,请验证在大屏设备上的屏幕方向和宽高比的预览效果。屏幕方向为纵向的大屏可折叠设备可以有横向宽高比;当设备处于横屏模式时,多窗口模式可以在可调整大小的窗口中纵向显示应用。

请参阅以下内容:

媒体投影

媒体投影会根据真实(来源)显示屏的边界创建虚拟屏幕。真实屏幕是指整个设备屏幕,即使设备处于多窗口模式而创建媒体投影的应用在一个窗口中运行也是如此。

如需为大屏幕媒体投影获取正确边界,请使用 Android 11(API 级别 30)中引入的 WindowMetrics API,或者如果要向下兼容到 API 级别 14 的话,使用 Jetpack WindowManager WindowMetrics API。

请参阅大屏设备上的媒体投影

针对外部输入设备提供基本支持

用户通常会将外接键盘或鼠标连接到平板电脑。Chromebook 带有内置键盘和触控板。通过让您的应用能够处理如下键盘、鼠标和触控板操作,支持外部输入设备:

  • 选择按钮、输入字段和导航图标
  • 选择菜单项、单选按钮、复选框和文本
  • 在可滚动元素(例如列表)中垂直和水平滚动

请参阅大屏幕上的输入兼容性

针对大屏幕优化

当您的应用针对大屏设备进行优化后,便可提供沉浸式、高效且有吸引力的用户体验,用户会喜欢在大屏设备上使用您的应用。

响应式/自适应布局

为了支持各种尺寸的屏幕,请设计在各种设备上都能提供出色用户体验的响应式/自适应布局。

首先,请熟悉以下内容:

窗口大小类别

窗口大小类别是一组主观的视口划分点,有助于您实现响应式/自适应设计。请使用窗口大小类别将可供您的应用使用的显示区域分类为紧凑、中等或展开,然后应用经过优化的布局。

请参阅支持不同的屏幕尺寸中的窗口大小类别

自适应应用导航

在小屏幕上,底部导航栏的使用效果很好,但在大屏幕上,导航侧边栏或抽屉式导航栏可以更好地利用增加的屏幕空间。请根据屏幕尺寸的变化调整应用导航。

请参阅大屏幕布局中的组件调适

响应式界面元素

根据屏幕尺寸设置界面元素格式。对于在较小屏幕上全宽显示的按钮、卡片和文本字段,对其宽度加以限制,使其在大屏设备上具有在功能方面合适的尺寸。请勿让对话框和其他模态窗口填满整个屏幕。定位上下文菜单和与元素相关的其他弹出式窗口(位于用户所选的元素旁边,而非在屏幕上居中显示)。

请参阅 Material Design 中的组件部分,包括按钮文本字段菜单对话框

无障碍

您可以通过无障碍 (a11y) 功能(例如通过 Tab 键和箭头键进行导航)优化您的应用,为常用操作(例如选择、复制、剪切和粘贴)提供键盘快捷键。您还可实现通过键盘控制媒体播放:例如,使用空格键控制播放和暂停媒体,或者使用 Enter 键在通信应用中发送消息。

请参阅构建无障碍功能更出色的应用

针对外部输入设备提供增强型支持

针对大屏设备优化的应用增强了对键盘、鼠标和触控板输入的支持。用户可通过鼠标和触控板右键点击行为来访问选项菜单,还可以使用鼠标滚轮和在触控板上做双指张合手势来缩放应用内容。界面元素具有悬停状态。

成为与众不同的大屏设备应用

与众不同的大屏设备应用会从应用商店中众多应用里脱颖而出。与众不同的应用提供的用户体验,是小屏设备无法比拟的。

多任务处理

大屏幕可为多任务处理提供方便。多窗口模式支持多任务处理,但特殊的显示模式(画中画和多实例)同样可以。

画中画模式

如果您的应用需要播放视频内容,请实现画中画模式,以便您的应用在用户与其他应用互动时可以继续播放视频。

请参阅对画中画 (PiP) 的支持

多实例模式

同时运行应用的两个或以上实例,可以提高应用(如文档编辑应用或内容管理应用)的效率。

请参阅多窗口支持中的多实例

可折叠设备

大屏可折叠设备就像是手机和平板电脑合二为一。桌面模式和图书模式等折叠功能提供了打造全新用户体验的可能性。因此,支持可折叠设备的独特功能可以让您的应用脱颖而出。

请参阅以下内容:

拖放

大屏幕非常适合进行应用内拖放互动,或在 Android 7.0(API 级别 24)及更高版本上于多窗口模式下进行应用间拖放互动。

为应用添加拖放功能,可提高用户的工作效率和互动度。

请参阅拖放

针对外部输入设备提供差异化支持

为外部输入设备提供类似桌面设备的支持。创建一整套可自定义的键盘快捷键。启用键盘和鼠标或键盘和触控板组合(例如 Ctrl+点击/Ctrl+点按,以及 Shift+点击/Shift+点按),以提供更广泛的功能。

当用户使用鼠标或触控板滚动内容时,显示滚动条。当鼠标指针或触控板悬停时,显示隐藏的内容元素,如飞出菜单或提示。提供桌面设备样式的菜单和上下文菜单。支持使用鼠标或触控板来调整界面面板的大小。支持使用鼠标多次点击,并支持在触控板上多次点按。

触控笔

顶级应用支持配备触控笔的大屏设备。借助触控笔,用户可以进行绘图、书写、擦除、拖放,以及执行各种其他触摸和手势互动。

增强型触控笔支持包括压力感应、倾斜检测以及防手掌和手指误触功能(以免记录误触操作)。

全面支持触控笔输入,在高端设备上提供卓越的用户体验。

请参阅大屏幕上的输入兼容性中的触控笔

后续步骤

请参阅大屏设备应用质量指南,开始构建您的大屏设备应用,让其可以在大屏设备上运行、针对大屏设备优化它,或让它与众不同。

其他资源