第 3 层 — 适配大屏幕
配置是设备状态和系统状态的组合。设备状态包括屏幕方向、显示尺寸、可折叠设备的折叠或展开状态、外部键盘可用性、连接的显示屏。系统状态包括显示模式(例如多窗口和多显示屏)以及用户定义的设置(例如字体大小和区域设置)。
配置变更包括设备状态或系统状态的变化,例如设备旋转、应用窗口大小调整、设备展开、外围设备连接或用户设置更新。
大屏幕设备会经历与小屏幕手机相同的配置变更,但大屏幕也具有独特的配置变更,例如:
- 设备折叠和展开
- 多窗口模式下自由形式的桌面式窗口的大小调整
Activity 重建
Android 通过销毁并在配置变更发生时重建正在运行的 Activity 来处理应用的配置变更。Android 会使用可适应新配置的设置和资源重建 Activity。
使用支持各种屏幕和应用窗口尺寸及宽高比的自适应/响应式布局设计您的应用,Android 框架的配置处理将为您的应用在大屏幕和小屏幕上提供最佳呈现方式。
自行处理配置变更
对于特殊情况,例如应用专属优化,请启用您的应用来处理配置变更,而不是让 Android 销毁并重建应用的 Activity。
通过在应用清单的 <activity>
元素的 android:configChanges
属性中设置值,指定您的应用要处理的配置变更。
例如,启用您的应用来处理多窗口配置变更
<activity
android:name=".MyActivity"
android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout" />
状态管理
无论是由 Android 为您处理配置变更,还是您自行处理,您的应用都必须保持上下文和状态。配置变更后,用户应该能够继续与您的应用互动,而不会出现中断或数据丢失,例如,当配置变更发生在媒体播放或数据输入期间。
后续步骤
如需详细了解如何处理配置变更和保持应用连续性,请参阅以下开发者指南: