用途:为 HarmonyOS 手机、平板、PC/2in1、折叠屏、三折叠等形态提供统一的方向判定与更新策略,覆盖屏幕旋转检测、屏幕方向与窗口方向适配、视频横竖屏切换及方向类 Bug 修复。\n\n主要能力:分三块主线——检测监听(ORIENT-01,旋转角度获取、方向变化监听、传感器检测与调试)、适配策略(ORIENT-02 多设备一多方向策略、module.json5 配置、断点判断;ORIENT-03 视频横竖屏切换与自适应旋转)、问题修复(ORIENT-04,折叠屏强制竖屏、Tabs 方向锁定、分屏旋转失效、全屏退出未恢复、开合闪烁等)。\n\n必要用法与约束:须区分屏幕旋转(rotation)、屏幕方向(display orientation)与窗口方向(window orientation),不可混用;控制显示方向须通过窗口侧 setPreferredOrientation() 设置旋转策略;分屏/悬浮窗/自由窗口下 setPreferredOrientation() 静默无效,应改用响应式布局;折叠屏 deviceInfo.deviceType 返回 'phone',需用 display.isFoldable() 加断点系统区分;三折叠 G 态 rotation=0 对应 LANDSCAPE_INVERTED。ORIENT-01 中 display.on('change') 回调须通过 Display 实例取信息,windowSizeChange 在旋转 180° 时不触发,传感器回调需用命名引用以便取消。视频全屏用 USER_ROTATION_LANDSCAPE,进入保存方向、退出成对恢复。修复顺序为监听入口→几何/状态→布局/交互→生命周期回收→回归验证,优先在开发者原方案上修复。\n\n适用场景:多设备方向适配需求分析、方向配置与断点判断、视频全屏方向切换、方向类问题排查与验证。限制:不覆盖纯布局问题、web 视觉翻转、折痕避让、交互输入方式适配与硬件能力检测;PC/2in1 不支持旋转策略。验证需包含各设备形态方向行为证据与 hdc 日志(rotation/orientation 值)。具体 API 名称、示例代码与三方库细节本资料未完整提供。
hmos-multidevice-natural-orientation
前端与建站
更新于 10-16 03:11